_Evas_Smart_Interface Struct Reference

A smart object's base interface definition. More...

Data Fields

const char * name
 Name of the given interface.
unsigned private_size
 Size, in bytes, of the interface's private dada blob.
Eina_Bool(* add )(Evas_Object *obj)
 Function to be called at object creation time.
void(* del )(Evas_Object *obj)
 Function to be called at object deletion time.

Detailed Description

A smart object's base interface definition.

Every Evas interface must have a name field, pointing to a global, constant string variable. This string pointer will be the only way of retrieving back a given interface from a smart object. Two function pointers must be defined, too, which will be called at object creation and deletion times.

See also some examples on smart interfaces.

Since:
1.7
Examples:
evas-smart-interface.c.

Field Documentation

Function to be called at object creation time.

This will take place before the object's smart add() function.

Referenced by evas_object_smart_add().

Function to be called at object deletion time.

This will take place after the object's smart del() function.

Size, in bytes, of the interface's private dada blob.

This will be allocated and freed automatically for you. Get it with evas_object_smart_interface_data_get().