Edje Box Part
Edje » Edje Object » Edje Part

Functions that deal with parts of type box. More...

## Functions

void | edje_box_layout_register (const char *name, Evas_Object_Box_Layout func, void *(*layout_data_get)(void *), void(*layout_data_free)(void *), void(*free_data)(void *), void *data)
| Registers a custom layout to be used in edje boxes.

## Detailed Description

Functions that deal with parts of type box.

Box is a container type for parts, that means it can contain other parts.

## Function Documentation

## edje_box_layout_register()

void edje_box_layout_register | ( | const char * | name,
|  | Evas_Object_Box_Layout | func,
|  | void *(* | layout_data_get )(void *),
|  | void(* | layout_data_free )(void *),
|  | void(* | free_data )(void *),
|  | void * | data )

Registers a custom layout to be used in edje boxes.

Parameters

  name | The name of the layout
  func | The function defining the layout
  layout_data_get | This function gets the custom data pointer for func
  layout_data_free | Passed to func to free its private data when needed
  free_data | Frees data
  data | Private pointer passed to layout_data_get

This function registers custom layouts that can be referred from themes by the registered name. The Evas_Object_Box_Layout functions receive two pointers for internal use, one being private data, and the other the function to free that data when it's not longer needed. From Edje, this private data will be retrieved by calling layout_data_get, and layout_data_free will be the free function passed to func. layout_data_get will be called with data as its parameter, and this one will be freed by free_data whenever the layout is unregistered from Edje.

Examples
  edje-box2.c.

References eina_rbtree_inline_insert(), eina_rbtree_inline_remove(), and ERR.