Data Fields
_Edje_External_Type Struct Reference

Information about an external type to be used. More...

Data Fields

unsigned int abi_version
 always use: 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...
 
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...
 
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...
 
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)
 
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...
 
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...
 
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 *(* params_parse )(void *data, Evas_Object *obj, const Eina_List *params)
 Parses the list of parameters, converting into a friendly representation. More...
 
void(* params_free )(void *params)
 Free parameters parsed with params_parse()
 
const char *(* label_get )(void *data)
 Get a label to use to identify this EXTERNAL. 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...
 
Evas_Object *(* preview_add )(void *data, Evas *e)
 Get a preview of the EXTERNAL object in use. 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)
 
Edje_External_Param_Infoparameters_info
 An array of Edje_External_Param_Info describing the different parameters this EXTERNAL may have. More...
 
void * data
 Private user data that will be passed to all of the class functions. 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.