2017-01-16 06:51:11 -08:00
|
|
|
EOAPI EFL_VOID_FUNC_BODY(override_a_set);
|
2014-09-04 03:22:31 -07:00
|
|
|
|
2018-04-17 11:09:44 -07:00
|
|
|
void _override_a_get(const Eo *obj, Override_Data *pd);
|
2016-10-07 04:13:27 -07:00
|
|
|
|
2017-01-16 06:51:11 -08:00
|
|
|
EOAPI EFL_VOID_FUNC_BODY_CONST(override_a_get);
|
2016-10-07 04:13:27 -07:00
|
|
|
|
2014-09-04 03:22:31 -07:00
|
|
|
static void __eolian_override_b_set(Eo *obj EINA_UNUSED, Override_Data *pd, int idx EINA_UNUSED, float a, char b, int c)
|
|
|
|
{
|
2017-10-13 14:48:34 -07:00
|
|
|
pd->a = a;
|
|
|
|
pd->b = b;
|
|
|
|
pd->c = c;
|
2014-09-04 03:22:31 -07:00
|
|
|
}
|
|
|
|
|
2016-08-15 06:44:41 -07:00
|
|
|
EOAPI EFL_VOID_FUNC_BODYV(override_b_set, EFL_FUNC_CALL(idx, a, b, c), int idx, float a, char b, int c);
|
2014-09-04 03:22:31 -07:00
|
|
|
|
2018-04-17 11:09:44 -07:00
|
|
|
void _override_b_get(const Eo *obj, Override_Data *pd, int idx, float *a, char *b, int *c);
|
2014-09-04 03:22:31 -07:00
|
|
|
|
2017-01-16 06:51:11 -08:00
|
|
|
EOAPI EFL_VOID_FUNC_BODYV_CONST(override_b_get, EFL_FUNC_CALL(idx, a, b, c), int idx, float *a, char *b, int *c);
|
|
|
|
|
2017-04-19 04:24:38 -07:00
|
|
|
void _override_c_set(Eo *obj, Override_Data *pd, int idx, int c);
|
2017-01-16 06:51:11 -08:00
|
|
|
|
|
|
|
EOAPI EFL_VOID_FUNC_BODYV(override_c_set, EFL_FUNC_CALL(idx, c), int idx, int c);
|
2014-09-04 03:22:31 -07:00
|
|
|
|
2018-04-17 11:09:44 -07:00
|
|
|
static int __eolian_override_c_get(const Eo *obj EINA_UNUSED, Override_Data *pd EINA_UNUSED, int idx EINA_UNUSED)
|
2014-09-04 03:22:31 -07:00
|
|
|
{
|
|
|
|
return 50;
|
|
|
|
}
|
|
|
|
|
2016-08-15 06:44:41 -07:00
|
|
|
EOAPI EFL_FUNC_BODYV_CONST(override_c_get, int, 50, EFL_FUNC_CALL(idx), int idx);
|
2017-01-16 06:51:11 -08:00
|
|
|
EOAPI EFL_VOID_FUNC_BODY(override_foo);
|
|
|
|
|
|
|
|
static void __eolian_override_bar(Eo *obj EINA_UNUSED, Override_Data *pd EINA_UNUSED, int idx EINA_UNUSED, int *a, char **str)
|
|
|
|
{
|
|
|
|
if (a) *a = 250;
|
|
|
|
if (str) *str = NULL;
|
|
|
|
}
|
|
|
|
|
|
|
|
EOAPI EFL_VOID_FUNC_BODYV(override_bar, EFL_FUNC_CALL(idx, a, str), int idx, int *a, char **str);
|
|
|
|
|
|
|
|
void _override_base_constructor(Eo *obj, Override_Data *pd);
|
|
|
|
|
2016-10-07 04:13:27 -07:00
|
|
|
|
2016-12-27 10:33:12 -08:00
|
|
|
static void __eolian_override_base_z_set(Eo *obj EINA_UNUSED, Override_Data *pd, int a, char b, float c)
|
2016-10-07 04:13:27 -07:00
|
|
|
{
|
2017-10-13 14:48:34 -07:00
|
|
|
pd->a = a;
|
|
|
|
pd->b = b;
|
|
|
|
pd->c = c;
|
2016-10-07 04:13:27 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
2018-04-17 11:09:44 -07:00
|
|
|
static void __eolian_override_base_z_get(const Eo *obj EINA_UNUSED, Override_Data *pd, int *a, char *b, float *c)
|
2016-10-07 04:13:27 -07:00
|
|
|
{
|
2016-12-27 10:33:12 -08:00
|
|
|
if (a) *a = pd->a;
|
|
|
|
if (b) *b = pd->b;
|
|
|
|
if (c) *c = pd->c;
|
2016-10-07 04:13:27 -07:00
|
|
|
}
|
|
|
|
|
2014-09-04 03:22:31 -07:00
|
|
|
|
2016-09-05 07:59:19 -07:00
|
|
|
static Eina_Bool
|
|
|
|
_override_class_initializer(Efl_Class *klass)
|
|
|
|
{
|
2017-04-13 06:56:15 -07:00
|
|
|
const Efl_Object_Ops *opsp = NULL, *copsp = NULL;
|
|
|
|
|
|
|
|
#ifndef OVERRIDE_EXTRA_OPS
|
|
|
|
#define OVERRIDE_EXTRA_OPS
|
|
|
|
#endif
|
|
|
|
|
2016-09-05 07:59:19 -07:00
|
|
|
EFL_OPS_DEFINE(ops,
|
2017-01-16 06:51:11 -08:00
|
|
|
EFL_OBJECT_OP_FUNC(override_a_set, NULL),
|
|
|
|
EFL_OBJECT_OP_FUNC(override_a_get, _override_a_get),
|
2016-09-05 07:59:19 -07:00
|
|
|
EFL_OBJECT_OP_FUNC(override_b_set, __eolian_override_b_set),
|
2017-04-19 04:24:38 -07:00
|
|
|
EFL_OBJECT_OP_FUNC(override_b_get, _override_b_get),
|
|
|
|
EFL_OBJECT_OP_FUNC(override_c_set, _override_c_set),
|
2016-09-05 07:59:19 -07:00
|
|
|
EFL_OBJECT_OP_FUNC(override_c_get, __eolian_override_c_get),
|
2017-01-16 06:51:11 -08:00
|
|
|
EFL_OBJECT_OP_FUNC(override_foo, NULL),
|
|
|
|
EFL_OBJECT_OP_FUNC(override_bar, __eolian_override_bar),
|
|
|
|
EFL_OBJECT_OP_FUNC(base_constructor, _override_base_constructor),
|
2016-10-07 04:13:27 -07:00
|
|
|
EFL_OBJECT_OP_FUNC(base_z_set, __eolian_override_base_z_set),
|
2017-04-13 06:56:15 -07:00
|
|
|
EFL_OBJECT_OP_FUNC(base_z_get, __eolian_override_base_z_get),
|
|
|
|
OVERRIDE_EXTRA_OPS
|
2016-09-05 07:59:19 -07:00
|
|
|
);
|
2017-04-13 06:56:15 -07:00
|
|
|
opsp = &ops;
|
|
|
|
|
|
|
|
#ifdef OVERRIDE_EXTRA_CLASS_OPS
|
|
|
|
EFL_OPS_DEFINE(cops, OVERRIDE_EXTRA_CLASS_OPS);
|
|
|
|
copsp = &cops;
|
|
|
|
#endif
|
|
|
|
|
2019-02-06 00:53:25 -08:00
|
|
|
return efl_class_functions_set(klass, opsp, copsp, NULL);
|
2016-09-05 07:59:19 -07:00
|
|
|
}
|
2014-09-04 03:22:31 -07:00
|
|
|
|
2016-08-10 07:23:04 -07:00
|
|
|
static const Efl_Class_Description _override_class_desc = {
|
2016-10-07 04:13:27 -07:00
|
|
|
EO_VERSION,
|
|
|
|
"Override",
|
2019-01-17 08:13:55 -08:00
|
|
|
EFL_CLASS_TYPE_REGULAR_NO_INSTANT,
|
2016-10-07 04:13:27 -07:00
|
|
|
sizeof(Override_Data),
|
|
|
|
_override_class_initializer,
|
|
|
|
NULL,
|
|
|
|
NULL
|
2014-09-04 03:22:31 -07:00
|
|
|
};
|
|
|
|
|
2016-09-09 02:53:58 -07:00
|
|
|
EFL_DEFINE_CLASS(override_class_get, &_override_class_desc, BASE_CLASS, NULL);
|