Information about an external type to be used. More...
Data Fields | |
unsigned int | abi_version |
always use: More... | |
Evas_Object *(* | add )(void *data, Evas *evas, Evas_Object *parent, const Eina_List *params, const char *part_name) |
Creates the object to be used by Edje as the part. More... | |
Evas_Object *(* | content_get )(void *data, const Evas_Object *obj, const char *content) |
Dynamically fetch a sub object of this external, called by scripts and user code. More... | |
void * | data |
Private user data that will be passed to all of the class functions. More... | |
const char *(* | description_get )(void *data) |
Get a user friendly description of this EXTERNAL. More... | |
Evas_Object *(* | icon_add )(void *data, Evas *e) |
Get an icon to use to identify this EXTERNAL. More... | |
const char *(* | label_get )(void *data) |
Get a label to use to identify this EXTERNAL. More... | |
const char * | module |
Name of the module that holds these definitions, as used in the externals {} block of a theme definition. More... | |
const char * | module_name |
Canonical name of the module, for displaying in edition programs, for example. More... | |
Eina_Bool(* | param_get )(void *data, const Evas_Object *obj, Edje_External_Param *param) |
Dynamically fetch a parameter of this external, called by scripts and user code. More... | |
Eina_Bool(* | param_set )(void *data, Evas_Object *obj, const Edje_External_Param *param) |
Dynamically change a parameter of this external, called by scripts and user code. More... | |
Edje_External_Param_Info * | parameters_info |
An array of Edje_External_Param_Info describing the different parameters this EXTERNAL may have. More... | |
void(* | params_free )(void *params) |
Free parameters parsed with params_parse() More... | |
void *(* | params_parse )(void *data, Evas_Object *obj, const Eina_List *params) |
Parses the list of parameters, converting into a friendly representation. More... | |
Evas_Object *(* | preview_add )(void *data, Evas *e) |
Get a preview of the EXTERNAL object in use. More... | |
void(* | signal_emit )(void *data, Evas_Object *obj, const char *emission, const char *source) |
Feed a signal emitted with emission originally set as part_name:signal to this object (without the "part_name:" prefix) More... | |
void(* | state_set )(void *data, Evas_Object *obj, const void *from_params, const void *to_params, float pos) |
Called upon state changes, including the initial "default" 0.0 state. More... | |
const char *(* | translate )(void *data, const char *orig) |
called to translate parameters_info name properties for use in user interfaces that support internationalization (i18n) (For editors) More... | |
Detailed Description
Information about an external type to be used.
This structure provides information on how to display and modify a third party Evas_Object in Edje.
Some function pointers are not really used by Edje, but provide means for Edje users to better interact with such objects. For instance, an editor may use label_get() and icon_get() to list all registered external types.
- Note
- The function pointers provided in this structure must check for errors and invalid or out-of-range values as for performance reasons Edje will not enforce hints provided as Edje_External_Param_Info in the member parameters_info.
Field Documentation
unsigned int _Edje_External_Type::abi_version |
always use:
- EDJE_EXTERNAL_TYPE_ABI_VERSION to declare.
- edje_external_type_abi_version_get() to check.
Referenced by edje_external_type_array_register(), and edje_external_type_register().
Evas_Object*(* _Edje_External_Type::add)(void *data, Evas *evas, Evas_Object *parent, const Eina_List *params, const char *part_name) |
Creates the object to be used by Edje as the part.
part_name
is the name of the part that holds the object and can be used to forward callbacks from the object as signals from Edje. params
is the list of Edje_External_Param, not parsed, from the default state of the part. Parameters of type EDJE_EXTERNAL_PARAM_FLAGS_CONSTRUCTOR should be set on the object here.
Referenced by _edje_external_type_add().
Evas_Object*(* _Edje_External_Type::content_get)(void *data, const Evas_Object *obj, const char *content) |
Dynamically fetch a sub object of this external, called by scripts and user code.
Returns Evas_Object
* on success. (Must check parameter name and type!)
Referenced by _edje_external_content_get().
void* _Edje_External_Type::data |
Private user data that will be passed to all of the class functions.
Referenced by _edje_external_content_get(), _edje_external_param_get(), _edje_external_param_set(), _edje_external_params_parse(), _edje_external_recalc_apply(), _edje_external_signal_emit(), and _edje_external_type_add().
const char*(* _Edje_External_Type::description_get)(void *data) |
Get a user friendly description of this EXTERNAL.
(For editors)
Evas_Object*(* _Edje_External_Type::icon_add)(void *data, Evas *e) |
Get an icon to use to identify this EXTERNAL.
(For editors)
const char*(* _Edje_External_Type::label_get)(void *data) |
Get a label to use to identify this EXTERNAL.
(For editors)
const char* _Edje_External_Type::module |
Name of the module that holds these definitions, as used in the externals {} block of a theme definition.
Referenced by _edje_external_content_get(), _edje_external_param_get(), and _edje_external_param_set().
const char* _Edje_External_Type::module_name |
Canonical name of the module, for displaying in edition programs, for example.
Referenced by _edje_external_content_get(), _edje_external_param_get(), _edje_external_param_set(), and edje_object_part_external_param_type_get().
Eina_Bool(* _Edje_External_Type::param_get)(void *data, const Evas_Object *obj, Edje_External_Param *param) |
Dynamically fetch a parameter of this external, called by scripts and user code.
Returns EINA_TRUE
on success. (Must check parameter name and type!)
Referenced by _edje_external_param_get().
Eina_Bool(* _Edje_External_Type::param_set)(void *data, Evas_Object *obj, const Edje_External_Param *param) |
Dynamically change a parameter of this external, called by scripts and user code.
Returns EINA_TRUE
on success
Referenced by _edje_external_param_set().
Edje_External_Param_Info* _Edje_External_Type::parameters_info |
An array of Edje_External_Param_Info describing the different parameters this EXTERNAL may have.
The last element in the array must be EDJE_EXTERNAL_PARAM_INFO_SENTINEL.
Referenced by edje_external_param_info_get(), and edje_object_part_external_param_type_get().
void(* _Edje_External_Type::params_free)(void *params) |
Free parameters parsed with params_parse()
Referenced by _edje_external_parsed_params_free().
void*(* _Edje_External_Type::params_parse)(void *data, Evas_Object *obj, const Eina_List *params) |
Parses the list of parameters, converting into a friendly representation.
Used with state_set()
Referenced by _edje_external_params_parse().
Evas_Object*(* _Edje_External_Type::preview_add)(void *data, Evas *e) |
Get a preview of the EXTERNAL object in use.
(For editors)
void(* _Edje_External_Type::signal_emit)(void *data, Evas_Object *obj, const char *emission, const char *source) |
Feed a signal emitted with emission originally set as part_name:signal to this object (without the "part_name:" prefix)
Referenced by _edje_external_signal_emit().
void(* _Edje_External_Type::state_set)(void *data, Evas_Object *obj, const void *from_params, const void *to_params, float pos) |
Called upon state changes, including the initial "default" 0.0 state.
Parameters are the value returned by params_parse(). The pos
parameter is a value between 0.0 and 1.0 indicating the position in time within the state transition.
Referenced by _edje_external_recalc_apply().
const char*(* _Edje_External_Type::translate)(void *data, const char *orig) |
called to translate parameters_info name properties for use in user interfaces that support internationalization (i18n) (For editors)
The documentation for this struct was generated from the following file:
- src/lib/Edje.h