_Evas_Object_Box_Api Struct Reference
Evas » Smart Object Functions » Box Smart Object

This structure should be used by any smart class inheriting from the box's one, to provide custom box behavior that could not be achieved only by providing a layout function, with evas_object_box_layout_set(). More...

`#include <Evas_Common.h>`

## Data Fields

Evas_Smart_Class | base
| Base smart class struct, need for all smart objects.
int | version
| Version of this smart class definition.
Evas_Object_Box_Option *(* | append )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child)
| Smart function to append child elements in boxes.
Evas_Object_Box_Option *(* | prepend )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child)
| Smart function to prepend child elements in boxes.
Evas_Object_Box_Option *(* | insert_before )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, const Evas_Object *reference)
| Smart function to insert a child element before another in boxes.
Evas_Object_Box_Option *(* | insert_after )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, const Evas_Object *reference)
| Smart function to insert a child element after another in boxes.
Evas_Object_Box_Option *(* | insert_at )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, unsigned int pos)
| Smart function to insert a child element at a given position on boxes.
Evas_Object *(* | remove )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child)
| Smart function to remove a child element from boxes.
Evas_Object *(* | remove_at )(Evas_Object *o, Evas_Object_Box_Data *priv, unsigned int pos)
| Smart function to remove a child element from boxes, by its position.
Eina_Bool(* | property_set )(Evas_Object *o, Evas_Object_Box_Option *opt, int property, va_list args)
| Smart function to set a custom property on a box child.
Eina_Bool(* | property_get )(const Evas_Object *o, Evas_Object_Box_Option *opt, int property, va_list args)
| Smart function to retrieve a custom property from a box child.
const char *(* | property_name_get )(const Evas_Object *o, int property)
| Smart function to get the name of a custom property of box children.
int(* | property_id_get )(const Evas_Object *o, const char *name)
| Smart function to get the numerical ID of a custom property of box children.
Evas_Object_Box_Option *(* | option_new )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child)
| Smart function to create a new box option struct.
void(* | option_free )(Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object_Box_Option *opt)
| Smart function to delete a box option struct.
Data Fields inherited from _Evas_Smart_Class
const char * | name
| the name string of the class
int | version
void(* | add )(Evas_Object *o)
| code to be run when adding object to a canvas
void(* | del )(Evas_Object *o)
| code to be run when removing object from a canvas
void(* | move )(Evas_Object *o, Evas_Coord x, Evas_Coord y)
| code to be run when moving object on a canvas.
void(* | resize )(Evas_Object *o, Evas_Coord w, Evas_Coord h)
| code to be run when resizing object on a canvas.
void(* | show )(Evas_Object *o)
| code to be run when showing object on a canvas
void(* | hide )(Evas_Object *o)
| code to be run when hiding object on a canvas
void(* | color_set )(Evas_Object *o, int r, int g, int b, int a)
| code to be run when setting color of object on a canvas.
void(* | clip_set )(Evas_Object *o, Evas_Object *clip)
| code to be run when setting clipper of object on a canvas.
void(* | clip_unset )(Evas_Object *o)
| code to be run when unsetting clipper of object on a canvas.
void(* | calculate )(Evas_Object *o)
| code to be run when object has rendering updates on a canvas
void(* | member_add )(Evas_Object *o, Evas_Object *child)
| code to be run when a child member is added to object
void(* | member_del )(Evas_Object *o, Evas_Object *child)
| code to be run when a child member is removed from object
const Evas_Smart_Class * | parent
| this class inherits from this parent
const Evas_Smart_Cb_Description * | callbacks
| callbacks at this level, `NULL` terminated
const Evas_Smart_Interface ** | interfaces
| Evas_Smart_Interface pointers array, `NULL` terminated.
const void * | data

## Detailed Description

This structure should be used by any smart class inheriting from the box's one, to provide custom box behavior that could not be achieved only by providing a layout function, with evas_object_box_layout_set().