Grid Smart Object.

Convenience smart object that packs children under a regular grid layout, using their virtual grid location and size to determine children's positions inside the grid object's area. More...

Functions

EAPI Evas_Objectevas_object_grid_add (Evas *evas)
 Create a new grid. More...
 
EAPI Evas_Objectevas_object_grid_add_to (Evas_Object *parent)
 Create a grid that is child of a given element parent. More...
 
EAPI void evas_object_grid_size_set (Evas_Object *o, int w, int h)
 Set the virtual resolution for the grid. More...
 
EAPI void evas_object_grid_size_get (const Evas_Object *o, int *w, int *h)
 Get the current virtual resolution. More...
 
EAPI void evas_object_grid_mirrored_set (Evas_Object *o, Eina_Bool mirrored)
 Sets the mirrored mode of the grid. More...
 
EAPI Eina_Bool evas_object_grid_mirrored_get (const Evas_Object *o)
 Gets the mirrored mode of the grid. More...
 
EAPI Eina_Bool evas_object_grid_pack (Evas_Object *o, Evas_Object *child, int x, int y, int w, int h)
 Add a new child to a grid object. More...
 
EAPI Eina_Bool evas_object_grid_unpack (Evas_Object *o, Evas_Object *child)
 Remove child from grid. More...
 
EAPI void evas_object_grid_clear (Evas_Object *o, Eina_Bool clear)
 Faster way to remove all child objects from a grid object. More...
 
EAPI Eina_Bool evas_object_grid_pack_get (const Evas_Object *o, Evas_Object *child, int *x, int *y, int *w, int *h)
 Get the pack options for a grid child. More...
 
EAPI Eina_Iterator * evas_object_grid_iterator_new (const Evas_Object *o)
 Get an iterator to walk the list of children for the grid. More...
 
EAPI Eina_Accessor * evas_object_grid_accessor_new (const Evas_Object *o)
 Get an accessor to get random access to the list of children for the grid. More...
 
EAPI Eina_List * evas_object_grid_children_get (const Evas_Object *o)
 Get the list of children for the grid. More...
 

Detailed Description

Convenience smart object that packs children under a regular grid layout, using their virtual grid location and size to determine children's positions inside the grid object's area.

Since
1.1

Function Documentation

EAPI Eina_Accessor* evas_object_grid_accessor_new ( const Evas_Object o)

Get an accessor to get random access to the list of children for the grid.

Note
Do not remove or delete objects while walking the list.
Since
1.1
EAPI Evas_Object* evas_object_grid_add ( Evas evas)

Create a new grid.

It's set to a virtual size of 1x1 by default and add children with evas_object_grid_pack().

Since
1.1

References evas_object_smart_add().

Referenced by evas_object_grid_add_to().

EAPI Evas_Object* evas_object_grid_add_to ( Evas_Object parent)

Create a grid that is child of a given element parent.

See also
evas_object_grid_add()
Since
1.1

References evas_object_evas_get(), evas_object_grid_add(), and evas_object_smart_member_add().

EAPI Eina_List* evas_object_grid_children_get ( const Evas_Object o)

Get the list of children for the grid.

Note
This is a duplicate of the list kept by the grid internally. It's up to the user to destroy it when it no longer needs it. It's possible to remove objects from the grid when walking this list, but these removals won't be reflected on it.
Since
1.1
EAPI void evas_object_grid_clear ( Evas_Object o,
Eina_Bool  clear 
)

Faster way to remove all child objects from a grid object.

Parameters
oThe given grid object.
clearif true, it will delete just removed children.
Since
1.1

References evas_object_del(), and evas_object_smart_member_del().

EAPI Eina_Iterator* evas_object_grid_iterator_new ( const Evas_Object o)

Get an iterator to walk the list of children for the grid.

Note
Do not remove or delete objects while walking the list.
Since
1.1
EAPI Eina_Bool evas_object_grid_mirrored_get ( const Evas_Object o)

Gets the mirrored mode of the grid.

Parameters
oThe grid object.
Returns
EINA_TRUE if it's a mirrored grid, EINA_FALSE otherwise.
See also
evas_object_grid_mirrored_set()
Since
1.1
EAPI void evas_object_grid_mirrored_set ( Evas_Object o,
Eina_Bool  mirrored 
)

Sets the mirrored mode of the grid.

In mirrored mode the grid items go from right to left instead of left to right. That is, 0,0 is top right, not to left.

Parameters
oThe grid object.
mirroredthe mirrored mode to set
Since
1.1
EAPI Eina_Bool evas_object_grid_pack ( Evas_Object o,
Evas_Object child,
int  x,
int  y,
int  w,
int  h 
)

Add a new child to a grid object.

Parameters
oThe given grid object.
childThe child object to add.
xThe virtual x coordinate of the child
yThe virtual y coordinate of the child
wThe virtual width of the child
hThe virtual height of the child
Returns
1 on success, 0 on failure.
Since
1.1

References evas_object_smart_changed(), and evas_object_smart_member_add().

EAPI Eina_Bool evas_object_grid_pack_get ( const Evas_Object o,
Evas_Object child,
int *  x,
int *  y,
int *  w,
int *  h 
)

Get the pack options for a grid child.

Get the pack x, y, width and height in virtual coordinates set by evas_object_grid_pack()

Parameters
oThe grid object
childThe grid child to query for coordinates
xThe pointer to where the x coordinate will be returned
yThe pointer to where the y coordinate will be returned
wThe pointer to where the width will be returned
hThe pointer to where the height will be returned
Returns
1 on success, 0 on failure.
Since
1.1
EAPI void evas_object_grid_size_get ( const Evas_Object o,
int *  w,
int *  h 
)

Get the current virtual resolution.

Parameters
oThe grid object to query
wA pointer to an integer to store the virtual width
hA pointer to an integer to store the virtual height
See also
evas_object_grid_size_set()
Since
1.1
EAPI void evas_object_grid_size_set ( Evas_Object o,
int  w,
int  h 
)

Set the virtual resolution for the grid.

Parameters
oThe grid object to modify
wThe virtual horizontal size (resolution) in integer units
hThe virtual vertical size (resolution) in integer units
Since
1.1

References evas_object_smart_changed().

EAPI Eina_Bool evas_object_grid_unpack ( Evas_Object o,
Evas_Object child 
)

Remove child from grid.

Note
removing a child will immediately call a walk over children in order to recalculate numbers of columns and rows. If you plan to remove all children, use evas_object_grid_clear() instead.
Returns
1 on success, 0 on failure.
Since
1.1

References evas_object_smart_member_del(), and evas_object_smart_parent_get().