Toolbar

Macros | Enumerations | Functions
Toolbar
Elementary

## Macros
#define | ELM_TOOLBAR_CLASS elm_toolbar_class_get()
| Elementary toolbar class.
#define | ELM_TOOLBAR_EVENT_ITEM_FOCUSED (&(_ELM_TOOLBAR_EVENT_ITEM_FOCUSED))
| Called when toolbar item got focus. More...
#define | ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED (&(_ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED))
| Called when toolbar item lost focus. More...

## Enumerations
enum | Elm_Toolbar_Shrink_Mode { ELM_TOOLBAR_SHRINK_NONE = 0 , ELM_TOOLBAR_SHRINK_HIDE , ELM_TOOLBAR_SHRINK_SCROLL , ELM_TOOLBAR_SHRINK_MENU , ELM_TOOLBAR_SHRINK_EXPAND , ELM_TOOLBAR_SHRINK_LAST , ELM_TOOLBAR_SHRINK_NONE = 0 , ELM_TOOLBAR_SHRINK_HIDE , ELM_TOOLBAR_SHRINK_SCROLL , ELM_TOOLBAR_SHRINK_MENU , ELM_TOOLBAR_SHRINK_EXPAND , ELM_TOOLBAR_SHRINK_LAST }
| Set toolbar's items display behavior, it can be scrollable, show a menu with exceeding items, or simply hide them. More...

## Functions
EINA_DEPRECATED void | elm_toolbar_always_select_mode_set (Evas_Object *obj, Eina_Bool always_select)
| Set whether the toolbar should always have an item selected. More...
EINA_DEPRECATED Eina_Bool | elm_toolbar_always_select_mode_get (const Evas_Object *obj)
| Get whether the toolbar should always have an item selected. More...
EINA_DEPRECATED void | elm_toolbar_no_select_mode_set (Evas_Object *obj, Eina_Bool no_select)
| Set whether the toolbar items' should be selected by the user or not. More...
EINA_DEPRECATED Eina_Bool | elm_toolbar_no_select_mode_get (const Evas_Object *obj)
| Set whether the toolbar items' should be selected by the user or not. More...
void | elm_toolbar_item_state_unset (Elm_Object_Item *it)
| Unset the state of `it`. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_selected_item_get (const Eo *obj)
| Get the selected item in the widget. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_first_item_get (const Eo *obj)
| Get the first item in the widget. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_last_item_get (const Eo *obj)
| Get the last item in the widget. More...
EOAPI Eina_Iterator * | elm_obj_toolbar_items_get (const Eo *obj)
| Returns a list of the widget item. More...
EOAPI void | elm_obj_toolbar_homogeneous_set (Eo *obj, Eina_Bool homogeneous)
| Control homogeneous mode. More...
EOAPI Eina_Bool | elm_obj_toolbar_homogeneous_get (const Eo *obj)
| Control homogeneous mode. More...
EOAPI void | elm_obj_toolbar_align_set (Eo *obj, double align)
| Control the alignment of the items. More...
EOAPI double | elm_obj_toolbar_align_get (const Eo *obj)
| Control the alignment of the items. More...
EOAPI void | elm_obj_toolbar_select_mode_set (Eo *obj, Elm_Object_Select_Mode mode)
| Control the toolbar select mode. More...
EOAPI Elm_Object_Select_Mode | elm_obj_toolbar_select_mode_get (const Eo *obj)
| Control the toolbar select mode. More...
EOAPI void | elm_obj_toolbar_icon_size_set (Eo *obj, int icon_size)
| Control the icon size, in pixels, to be used by toolbar items. More...
EOAPI int | elm_obj_toolbar_icon_size_get (const Eo *obj)
| Control the icon size, in pixels, to be used by toolbar items. More...
EOAPI void | elm_obj_toolbar_shrink_mode_set (Eo *obj, Elm_Toolbar_Shrink_Mode shrink_mode)
| Control the item displaying mode of a given toolbar widget `obj`. More...
EOAPI Elm_Toolbar_Shrink_Mode | elm_obj_toolbar_shrink_mode_get (const Eo *obj)
| Control the item displaying mode of a given toolbar widget `obj`. More...
EOAPI void | elm_obj_toolbar_menu_parent_set (Eo *obj, Efl_Canvas_Object *parent)
| Control the parent object of the toolbar items' menus. More...
EOAPI Efl_Canvas_Object * | elm_obj_toolbar_menu_parent_get (const Eo *obj)
| Control the parent object of the toolbar items' menus. More...
EOAPI void | elm_obj_toolbar_standard_priority_set (Eo *obj, int priority)
| Set the standard priority of visible items in a toolbar. More...
EOAPI int | elm_obj_toolbar_standard_priority_get (const Eo *obj)
| Set the standard priority of visible items in a toolbar. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_more_item_get (const Eo *obj)
| Get the more item which is auto-generated by toolbar. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_item_insert_before (Eo *obj, Elm_Widget_Item *before, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Insert a new item into the toolbar object before item `before`. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_item_insert_after (Eo *obj, Elm_Widget_Item *after, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Insert a new item into the toolbar object after item `after`. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_item_append (Eo *obj, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Append item to the toolbar. More...
EOAPI unsigned int | elm_obj_toolbar_items_count (const Eo *obj)
| Get the number of items in a toolbar. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_item_prepend (Eo *obj, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Prepend item to the toolbar. More...
EOAPI Elm_Widget_Item * | elm_obj_toolbar_item_find_by_label (const Eo *obj, const char *label)
| Returns a pointer to a toolbar item by its label. More...
Elm_Widget_Item * | elm_toolbar_selected_item_get (const Elm_Toolbar *obj)
| Get the selected item in the widget. More...
Elm_Widget_Item * | elm_toolbar_first_item_get (const Elm_Toolbar *obj)
| Get the first item in the widget. More...
Elm_Widget_Item * | elm_toolbar_last_item_get (const Elm_Toolbar *obj)
| Get the last item in the widget. More...
Eina_Iterator * | elm_toolbar_items_get (const Elm_Toolbar *obj)
| Returns a list of the widget item. More...
void | elm_toolbar_homogeneous_set (Elm_Toolbar *obj, Eina_Bool homogeneous)
| Control homogeneous mode. More...
Eina_Bool | elm_toolbar_homogeneous_get (const Elm_Toolbar *obj)
| Control homogeneous mode. More...
void | elm_toolbar_align_set (Elm_Toolbar *obj, double align)
| Control the alignment of the items. More...
double | elm_toolbar_align_get (const Elm_Toolbar *obj)
| Control the alignment of the items. More...
void | elm_toolbar_select_mode_set (Elm_Toolbar *obj, Elm_Object_Select_Mode mode)
| Control the toolbar select mode. More...
Elm_Object_Select_Mode | elm_toolbar_select_mode_get (const Elm_Toolbar *obj)
| Control the toolbar select mode. More...
void | elm_toolbar_icon_size_set (Elm_Toolbar *obj, int icon_size)
| Control the icon size, in pixels, to be used by toolbar items. More...
int | elm_toolbar_icon_size_get (const Elm_Toolbar *obj)
| Control the icon size, in pixels, to be used by toolbar items. More...
void | elm_toolbar_shrink_mode_set (Elm_Toolbar *obj, Elm_Toolbar_Shrink_Mode shrink_mode)
| Control the item displaying mode of a given toolbar widget `obj`. More...
Elm_Toolbar_Shrink_Mode | elm_toolbar_shrink_mode_get (const Elm_Toolbar *obj)
| Control the item displaying mode of a given toolbar widget `obj`. More...
void | elm_toolbar_menu_parent_set (Elm_Toolbar *obj, Efl_Canvas_Object *parent)
| Control the parent object of the toolbar items' menus. More...
Efl_Canvas_Object * | elm_toolbar_menu_parent_get (const Elm_Toolbar *obj)
| Control the parent object of the toolbar items' menus. More...
void | elm_toolbar_standard_priority_set (Elm_Toolbar *obj, int priority)
| Set the standard priority of visible items in a toolbar. More...
int | elm_toolbar_standard_priority_get (const Elm_Toolbar *obj)
| Set the standard priority of visible items in a toolbar. More...
Elm_Widget_Item * | elm_toolbar_more_item_get (const Elm_Toolbar *obj)
| Get the more item which is auto-generated by toolbar. More...
Elm_Widget_Item * | elm_toolbar_item_insert_before (Elm_Toolbar *obj, Elm_Widget_Item *before, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Insert a new item into the toolbar object before item `before`. More...
Elm_Widget_Item * | elm_toolbar_item_insert_after (Elm_Toolbar *obj, Elm_Widget_Item *after, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Insert a new item into the toolbar object after item `after`. More...
Elm_Widget_Item * | elm_toolbar_item_append (Elm_Toolbar *obj, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Append item to the toolbar. More...
unsigned int | elm_toolbar_items_count (const Elm_Toolbar *obj)
| Get the number of items in a toolbar. More...
Elm_Widget_Item * | elm_toolbar_item_prepend (Elm_Toolbar *obj, const char *icon, const char *label, Evas_Smart_Cb func, const void *data)
| Prepend item to the toolbar. More...
Elm_Widget_Item * | elm_toolbar_item_find_by_label (const Elm_Toolbar *obj, const char *label)
| Returns a pointer to a toolbar item by its label. More...
Evas_Object * | elm_toolbar_add (Evas_Object *parent)
| Add a new toolbar widget to the given parent Elementary (container) object. More...
void | elm_toolbar_reorder_mode_set (Evas_Object *obj, Eina_Bool reorder_mode)
| Set reorder mode. More...
Eina_Bool | elm_toolbar_reorder_mode_get (const Evas_Object *obj)
| Get the reorder mode. More...
void | elm_toolbar_transverse_expanded_set (Evas_Object *obj, Eina_Bool transverse_expanded)
| Set the item's transverse expansion of a given toolbar widget `obj`. More...
Eina_Bool | elm_toolbar_transverse_expanded_get (const Evas_Object *obj)
| Get the transverse expansion of toolbar `obj`. More...
void | elm_toolbar_icon_order_lookup_set (Evas_Object *obj, Elm_Icon_Lookup_Order order)
| Sets icon lookup order, for toolbar items' icons. More...
Elm_Icon_Lookup_Order | elm_toolbar_icon_order_lookup_get (const Evas_Object *obj)
| Gets icon lookup order, for toolbar items' icons. More...
void | elm_toolbar_horizontal_set (Evas_Object *obj, Eina_Bool horizontal)
| Change a toolbar's orientation. More...
Eina_Bool | elm_toolbar_horizontal_get (const Evas_Object *obj)
| Get toolbar's current orientation. More...

## Detailed Description

A toolbar is a widget that displays a list of items inside a box. It can be scrollable, show a menu with items that don't fit to toolbar size or even crop them.

Only one item can be selected at a time.

Items can have multiple states, or show menus when selected by the user.

This widget implements the The Elementary Scrollable Interface interface, so that all (non-deprecated) functions for the base Scroller widget also work for toolbars (since 1.8)

Smart callbacks one can listen to:

- `"clicked"` - when the user clicks on a toolbar item and becomes selected.
- `"longpressed"` - when the toolbar is pressed for a certain amount of time.
- `"language,changed"` - when the program language changes.
- `"focused"` - When the toolbar has received focus. (since 1.8)
- `"unfocused"` - When the toolbar has lost focus. (since 1.8)
- `"item,focused"` - When the toolbar item has received focus. (since 1.10)
- `"item,unfocused"` - When the toolbar item has lost focus. (since 1.10)
- `"selected"` - when an item is selected. `event_info` is a selected item. (since 1.11)
- `"unselected"` - when an item is unselected. `event_info` is a unselected item. (since 1.11)

Available styles for it:

- `"default"`
- `"transparent"` - no background or shadow, just show the content

Default text parts of the toolbar items that you can use for are:

- "default" - A label of the toolbar item

Supported elm_object_item common APIs.

- elm_object_item_del
- elm_object_item_disabled_set
- elm_object_item_disabled_get
- elm_object_item_part_text_set
- elm_object_item_part_text_get
- elm_object_item_part_content_set
- elm_object_item_part_content_get
- elm_object_item_part_content_unset
- elm_object_item_focus_set
- elm_object_item_focus_get

List of examples:

- Toolbar Example - Simple Items
- Toolbar Example - Items with States
- Toolbar Example - Items with Menus

## Macro Definition Documentation

## ◆ ELM_TOOLBAR_EVENT_ITEM_FOCUSED

#define ELM_TOOLBAR_EVENT_ITEM_FOCUSED (&(_ELM_TOOLBAR_EVENT_ITEM_FOCUSED))

Called when toolbar item got focus.

Returns
  Efl_Object *

## ◆ ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED

#define ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED (&(_ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED))

Called when toolbar item lost focus.

Returns
  Efl_Object *

## Enumeration Type Documentation

## ◆ Elm_Toolbar_Shrink_Mode

enum Elm_Toolbar_Shrink_Mode

Set toolbar's items display behavior, it can be scrollable, show a menu with exceeding items, or simply hide them.

Default value is ELM_TOOLBAR_SHRINK_MENU. It reads value from elm config.

Values don't work as bitmask, only one can be chosen.

See also elm_toolbar_shrink_mode_set, elm_toolbar_shrink_mode_get.

Enumerator
ELM_TOOLBAR_SHRINK_NONE | Set toolbar minimum size to fit all the items.
ELM_TOOLBAR_SHRINK_HIDE | Hide exceeding items.
ELM_TOOLBAR_SHRINK_SCROLL | Allow accessing exceeding items through a scroller.
ELM_TOOLBAR_SHRINK_MENU | Inserts a button to pop up a menu with exceeding items.
ELM_TOOLBAR_SHRINK_EXPAND | Expand all items according the size of the toolbar.
ELM_TOOLBAR_SHRINK_LAST | Indicates error if returned by elm_toolbar_shrink_mode_get()
ELM_TOOLBAR_SHRINK_NONE | Set toolbar minimum size to fit all the items.
ELM_TOOLBAR_SHRINK_HIDE | Hide exceeding items.
ELM_TOOLBAR_SHRINK_SCROLL | Allow accessing exceeding items through a scroller.
ELM_TOOLBAR_SHRINK_MENU | Inserts a button to pop up a menu with exceeding items.
ELM_TOOLBAR_SHRINK_EXPAND | Expand all items according the size of the toolbar.
ELM_TOOLBAR_SHRINK_LAST | Indicates error if returned by elm_toolbar_shrink_mode_get()

## Function Documentation

## ◆ elm_toolbar_always_select_mode_set()

EINA_DEPRECATED void elm_toolbar_always_select_mode_set | ( | Evas_Object * | obj,
|  | Eina_Bool | always_select
| ) |  |

Set whether the toolbar should always have an item selected.

Parameters

  obj | The toolbar object.
  always_select | `EINA_TRUE` to enable always-select mode or `EINA_FALSE` to disable it.

This will cause the toolbar to always have an item selected, and clicking the selected item will not cause a selected event to be emitted. Enabling this mode will immediately select the first toolbar item.

Always-selected is disabled by default.

See also
  elm_toolbar_always_select_mode_get().

## ◆ elm_toolbar_always_select_mode_get()

EINA_DEPRECATED Eina_Bool elm_toolbar_always_select_mode_get | ( | const Evas_Object * | obj | ) |

Get whether the toolbar should always have an item selected.

Parameters

  obj | The toolbar object.

Returns
  `EINA_TRUE` means an item will always be selected, `EINA_FALSE` indicates that it is possible to have no items selected. If `obj` is `NULL`, `EINA_FALSE` is returned.

See also
  elm_toolbar_always_select_mode_set() for details.

## ◆ elm_toolbar_no_select_mode_set()

EINA_DEPRECATED void elm_toolbar_no_select_mode_set | ( | Evas_Object * | obj,
|  | Eina_Bool | no_select
| ) |  |

Set whether the toolbar items' should be selected by the user or not.

Parameters

  obj | The toolbar object.
  no_select | `EINA_TRUE` to disable selection or `EINA_FALSE` to enable it.

This will turn off the ability to select items entirely and they will neither appear selected nor emit selected signals. The clicked callback function will still be called.

Selection is enabled by default.

See also
  elm_toolbar_no_select_mode_get().

## ◆ elm_toolbar_no_select_mode_get()

EINA_DEPRECATED Eina_Bool elm_toolbar_no_select_mode_get | ( | const Evas_Object * | obj | ) |

Set whether the toolbar items' should be selected by the user or not.

Parameters

  obj | The toolbar object.

Returns
  `EINA_TRUE` means items can be selected. `EINA_FALSE` indicates they can't. If `obj` is `NULL`, `EINA_FALSE` is returned.

See also
  elm_toolbar_no_select_mode_set() for details.

## ◆ elm_toolbar_item_state_unset()

void elm_toolbar_item_state_unset | ( | Elm_Object_Item * | it | ) |

Unset the state of `it`.

Parameters

  it | The toolbar item.

The default icon and label from this item will be displayed.

See also
  elm_toolbar_item_state_set() for more details.

## ◆ elm_obj_toolbar_selected_item_get()

EOAPI Elm_Widget_Item* elm_obj_toolbar_selected_item_get | ( | const Eo * | obj | ) |

Get the selected item in the widget.

Parameters

  [in] | obj | The object.

Returns
  The selected item or `null`.

Referenced by elm_toolbar_selected_item_get().

## ◆ elm_obj_toolbar_first_item_get()

EOAPI Elm_Widget_Item* elm_obj_toolbar_first_item_get | ( | const Eo * | obj | ) |

Get the first item in the widget.

Parameters

  [in] | obj | The object.

Returns
  The first item or `null`.

Referenced by elm_toolbar_first_item_get().

## ◆ elm_obj_toolbar_last_item_get()

EOAPI Elm_Widget_Item* elm_obj_toolbar_last_item_get | ( | const Eo * | obj | ) |

Get the last item in the widget.

Parameters

  [in] | obj | The object.

Returns
  The last item or `null`.

Referenced by elm_toolbar_last_item_get().

## ◆ elm_obj_toolbar_items_get()

EOAPI Eina_Iterator* elm_obj_toolbar_items_get | ( | const Eo * | obj | ) |

Returns a list of the widget item.

Parameters

  [in] | obj | The object.

Returns
  iterator to widget items

Referenced by elm_toolbar_items_get().

## ◆ elm_obj_toolbar_homogeneous_set()

EOAPI void elm_obj_toolbar_homogeneous_set | ( | Eo * | obj,
|  | Eina_Bool | homogeneous
| ) |  |

Control homogeneous mode.

This will enable the homogeneous mode where items are of the same size.

Parameters

  [in] | obj | The object.
  [in] | homogeneous | Assume the items within the toolbar are of the same size (true = on, false = off). Default is `false`.

Referenced by elm_toolbar_homogeneous_set().

## ◆ elm_obj_toolbar_homogeneous_get()

EOAPI Eina_Bool elm_obj_toolbar_homogeneous_get | ( | const Eo * | obj | ) |

Control homogeneous mode.

This will enable the homogeneous mode where items are of the same size.

Parameters

  [in] | obj | The object.

Returns
  Assume the items within the toolbar are of the same size (true = on, false = off). Default is `false`.

Referenced by elm_toolbar_homogeneous_get().

## ◆ elm_obj_toolbar_align_set()

EOAPI void elm_obj_toolbar_align_set | ( | Eo * | obj,
|  | double | align
| ) |  |

Control the alignment of the items.

Alignment of toolbar items, from 0.0 to indicates to align left, to 1.0, to align to right. 0.5 centralize items.

Centered items by default.

Parameters

  [in] | obj | The object.
  [in] | align | The new alignment, a float between 0.0 and 1.0.

Referenced by elm_toolbar_align_set().

## ◆ elm_obj_toolbar_align_get()

EOAPI double elm_obj_toolbar_align_get | ( | const Eo * | obj | ) |

Control the alignment of the items.

Alignment of toolbar items, from 0.0 to indicates to align left, to 1.0, to align to right. 0.5 centralize items.

Centered items by default.

Parameters

  [in] | obj | The object.

Returns
  The new alignment, a float between 0.0 and 1.0.

Referenced by elm_toolbar_align_get().

## ◆ elm_obj_toolbar_select_mode_set()

EOAPI void elm_obj_toolbar_select_mode_set | ( | Eo * | obj,
|  | Elm_Object_Select_Mode | mode
| ) |  |

Control the toolbar select mode.

elm_toolbar_select_mode_set() changes item select mode in the toolbar widget. - ELM_OBJECT_SELECT_MODE_DEFAULT : Items will only call their selection func and callback when first becoming selected. Any further clicks will do nothing, unless you set always select mode. - ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected, every click will make the selected callbacks be called. - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select items entirely and they will neither appear selected nor call selected callback functions.

Parameters

  [in] | obj | The object.
  [in] | mode | The select mode If getting mode fails, it returns ELM_OBJECT_SELECT_MODE_MAX

Referenced by elm_toolbar_select_mode_set().

## ◆ elm_obj_toolbar_select_mode_get()

EOAPI Elm_Object_Select_Mode elm_obj_toolbar_select_mode_get | ( | const Eo * | obj | ) |

Control the toolbar select mode.

elm_toolbar_select_mode_set() changes item select mode in the toolbar widget. - ELM_OBJECT_SELECT_MODE_DEFAULT : Items will only call their selection func and callback when first becoming selected. Any further clicks will do nothing, unless you set always select mode. - ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected, every click will make the selected callbacks be called. - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select items entirely and they will neither appear selected nor call selected callback functions.

Parameters

  [in] | obj | The object.

Returns
  The select mode If getting mode fails, it returns ELM_OBJECT_SELECT_MODE_MAX

Referenced by elm_toolbar_select_mode_get().

## ◆ elm_obj_toolbar_icon_size_set()

EOAPI void elm_obj_toolbar_icon_size_set | ( | Eo * | obj,
|  | int | icon_size
| ) |  |

Control the icon size, in pixels, to be used by toolbar items.

Note
  Default value is $32. It reads value from elm config.

Parameters

  [in] | obj | The object.
  [in] | icon_size | The icon size in pixels

Referenced by elm_toolbar_icon_size_set().

## ◆ elm_obj_toolbar_icon_size_get()

EOAPI int elm_obj_toolbar_icon_size_get | ( | const Eo * | obj | ) |

Control the icon size, in pixels, to be used by toolbar items.

Note
  Default value is $32. It reads value from elm config.

Parameters

  [in] | obj | The object.

Returns
  The icon size in pixels

Referenced by elm_toolbar_icon_size_get().

## ◆ elm_obj_toolbar_shrink_mode_set()

EOAPI void elm_obj_toolbar_shrink_mode_set | ( | Eo * | obj,
|  | Elm_Toolbar_Shrink_Mode | shrink_mode
| ) |  |

Control the item displaying mode of a given toolbar widget `obj`.

The toolbar won't scroll under ELM_TOOLBAR_SHRINK_NONE mode, but it will enforce a minimum size, so that all the items will fit inside it. It won't scroll and won't show the items that don't fit under ELM_TOOLBAR_SHRINK_HIDE mode. Finally, it'll scroll under ELM_TOOLBAR_SHRINK_SCROLL mode, and it will create a button to aggregate items which didn't fit with the ELM_TOOLBAR_SHRINK_MENU mode.

If shrink mode is changed, Toolbar will send one of the following signal to each item for informing the current shrink mode. "elm,state,shrink,default" "elm,state,shrink,hide" "elm,state,shrink,scroll" "elm,state,shrink,menu" "elm,state,shrink,expand"

Warning
  This function's behavior will clash with those of elm_scroller_policy_set(), so use either one of them, but not both.

Parameters

  [in] | obj | The object.
  [in] | shrink_mode | Toolbar's items display behavior

Referenced by elm_toolbar_shrink_mode_set().

## ◆ elm_obj_toolbar_shrink_mode_get()

EOAPI Elm_Toolbar_Shrink_Mode elm_obj_toolbar_shrink_mode_get | ( | const Eo * | obj | ) |

Control the item displaying mode of a given toolbar widget `obj`.

The toolbar won't scroll under ELM_TOOLBAR_SHRINK_NONE mode, but it will enforce a minimum size, so that all the items will fit inside it. It won't scroll and won't show the items that don't fit under ELM_TOOLBAR_SHRINK_HIDE mode. Finally, it'll scroll under ELM_TOOLBAR_SHRINK_SCROLL mode, and it will create a button to aggregate items which didn't fit with the ELM_TOOLBAR_SHRINK_MENU mode.

If shrink mode is changed, Toolbar will send one of the following signal to each item for informing the current shrink mode. "elm,state,shrink,default" "elm,state,shrink,hide" "elm,state,shrink,scroll" "elm,state,shrink,menu" "elm,state,shrink,expand"

Warning
  This function's behavior will clash with those of elm_scroller_policy_set(), so use either one of them, but not both.

Parameters

  [in] | obj | The object.

Returns
  Toolbar's items display behavior

Referenced by elm_toolbar_shrink_mode_get().

## ◆ elm_obj_toolbar_menu_parent_set()

EOAPI void elm_obj_toolbar_menu_parent_set | ( | Eo * | obj,
|  | Efl_Canvas_Object * | parent
| ) |  |

Control the parent object of the toolbar items' menus.

Each item can be set as item menu, with elm_toolbar_item_menu_set().

For more details about setting the parent for toolbar menus, see elm_menu_parent_set().

See: elm_menu_parent_set() for details. See: elm_toolbar_item_menu_set() for details.

Parameters

  [in] | obj | The object.
  [in] | parent | The parent of the menu objects.

Referenced by elm_toolbar_menu_parent_set().

## ◆ elm_obj_toolbar_menu_parent_get()

EOAPI Efl_Canvas_Object* elm_obj_toolbar_menu_parent_get | ( | const Eo * | obj | ) |

Control the parent object of the toolbar items' menus.

Each item can be set as item menu, with elm_toolbar_item_menu_set().

For more details about setting the parent for toolbar menus, see elm_menu_parent_set().

See: elm_menu_parent_set() for details. See: elm_toolbar_item_menu_set() for details.

Parameters

  [in] | obj | The object.

Returns
  The parent of the menu objects.

Referenced by elm_toolbar_menu_parent_get().

## ◆ elm_obj_toolbar_standard_priority_set()

EOAPI void elm_obj_toolbar_standard_priority_set | ( | Eo * | obj,
|  | int | priority
| ) |  |

Set the standard priority of visible items in a toolbar.

If the priority of the item is up to standard priority, it is shown in basic panel. The other items are located in more menu or panel. The more menu or panel can be shown when the more item is clicked.

Parameters

  [in] | obj | The object.
  [in] | priority | The standard_priority of visible items

Since
  1.7

Referenced by elm_toolbar_standard_priority_set().

## ◆ elm_obj_toolbar_standard_priority_get()

EOAPI int elm_obj_toolbar_standard_priority_get | ( | const Eo * | obj | ) |

Set the standard priority of visible items in a toolbar.

If the priority of the item is up to standard priority, it is shown in basic panel. The other items are located in more menu or panel. The more menu or panel can be shown when the more item is clicked.

Parameters

  [in] | obj | The object.

Returns
  The standard_priority of visible items

Since
  1.7

Referenced by elm_toolbar_standard_priority_get().

## ◆ elm_obj_toolbar_more_item_get()

EOAPI Elm_Widget_Item* elm_obj_toolbar_more_item_get | ( | const Eo * | obj | ) |

Get the more item which is auto-generated by toolbar.

Toolbar generates 'more' item when there is no more space to fit items in and toolbar is in ELM_TOOLBAR_SHRINK_MENU or ELM_TOOLBAR_SHRINK_EXPAND mode. The more item can be manipulated by elm_object_item_text_set() and elm_object_item_content_set.

Parameters

  [in] | obj | The object.

Returns
  The toolbar more item.

Referenced by elm_toolbar_more_item_get().

## ◆ elm_obj_toolbar_item_insert_before()

EOAPI Elm_Widget_Item* elm_obj_toolbar_item_insert_before | ( | Eo * | obj,
|  | Elm_Widget_Item * | before,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Insert a new item into the toolbar object before item `before`.

A new item will be created and added to the toolbar. Its position in this toolbar will be just before item `before`.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | before | The toolbar item to insert before.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

Referenced by elm_toolbar_item_insert_before().

## ◆ elm_obj_toolbar_item_insert_after()

EOAPI Elm_Widget_Item* elm_obj_toolbar_item_insert_after | ( | Eo * | obj,
|  | Elm_Widget_Item * | after,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Insert a new item into the toolbar object after item `after`.

A new item will be created and added to the toolbar. Its position in this toolbar will be just after item `after`.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | after | The toolbar item to insert after.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

Referenced by elm_toolbar_item_insert_after().

## ◆ elm_obj_toolbar_item_append()

EOAPI Elm_Widget_Item* elm_obj_toolbar_item_append | ( | Eo * | obj,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Append item to the toolbar.

A new item will be created and appended to the toolbar, i.e., will be set as last item.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

Referenced by elm_toolbar_item_append().

## ◆ elm_obj_toolbar_items_count()

EOAPI unsigned int elm_obj_toolbar_items_count | ( | const Eo * | obj | ) |

Get the number of items in a toolbar.

Parameters

  [in] | obj | The object.

Returns
  The number of items in `obj` toolbar

Referenced by elm_toolbar_items_count().

## ◆ elm_obj_toolbar_item_prepend()

EOAPI Elm_Widget_Item* elm_obj_toolbar_item_prepend | ( | Eo * | obj,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Prepend item to the toolbar.

A new item will be created and prepended to the toolbar, i.e., will be set as first item.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

Referenced by elm_toolbar_item_prepend().

## ◆ elm_obj_toolbar_item_find_by_label()

EOAPI Elm_Widget_Item* elm_obj_toolbar_item_find_by_label | ( | const Eo * | obj,
|  | const char * | label
| ) |  |

Returns a pointer to a toolbar item by its label.

Parameters

  [in] | obj | The object.
  [in] | label | The label of the item to find.

Returns
  The pointer to the toolbar item matching `label` or `NULL` on failure.

Referenced by elm_toolbar_item_find_by_label().

## ◆ elm_toolbar_selected_item_get()

Elm_Widget_Item* elm_toolbar_selected_item_get | ( | const Elm_Toolbar * | obj | ) |

Get the selected item in the widget.

Parameters

  [in] | obj | The object.

Returns
  The selected item or `null`.

References elm_obj_toolbar_selected_item_get().

## ◆ elm_toolbar_first_item_get()

Elm_Widget_Item* elm_toolbar_first_item_get | ( | const Elm_Toolbar * | obj | ) |

Get the first item in the widget.

Parameters

  [in] | obj | The object.

Returns
  The first item or `null`.

References elm_obj_toolbar_first_item_get().

## ◆ elm_toolbar_last_item_get()

Elm_Widget_Item* elm_toolbar_last_item_get | ( | const Elm_Toolbar * | obj | ) |

Get the last item in the widget.

Parameters

  [in] | obj | The object.

Returns
  The last item or `null`.

References elm_obj_toolbar_last_item_get().

## ◆ elm_toolbar_items_get()

Eina_Iterator* elm_toolbar_items_get | ( | const Elm_Toolbar * | obj | ) |

Returns a list of the widget item.

Parameters

  [in] | obj | The object.

Returns
  iterator to widget items

References elm_obj_toolbar_items_get().

## ◆ elm_toolbar_homogeneous_set()

void elm_toolbar_homogeneous_set | ( | Elm_Toolbar * | obj,
|  | Eina_Bool | homogeneous
| ) |  |

Control homogeneous mode.

This will enable the homogeneous mode where items are of the same size.

Parameters

  [in] | obj | The object.
  [in] | homogeneous | Assume the items within the toolbar are of the same size (true = on, false = off). Default is `false`.

References elm_obj_toolbar_homogeneous_set().

## ◆ elm_toolbar_homogeneous_get()

Eina_Bool elm_toolbar_homogeneous_get | ( | const Elm_Toolbar * | obj | ) |

Control homogeneous mode.

This will enable the homogeneous mode where items are of the same size.

Parameters

  [in] | obj | The object.

Returns
  Assume the items within the toolbar are of the same size (true = on, false = off). Default is `false`.

References elm_obj_toolbar_homogeneous_get().

## ◆ elm_toolbar_align_set()

void elm_toolbar_align_set | ( | Elm_Toolbar * | obj,
|  | double | align
| ) |  |

Control the alignment of the items.

Alignment of toolbar items, from 0.0 to indicates to align left, to 1.0, to align to right. 0.5 centralize items.

Centered items by default.

Parameters

  [in] | obj | The object.
  [in] | align | The new alignment, a float between 0.0 and 1.0.

References elm_obj_toolbar_align_set().

## ◆ elm_toolbar_align_get()

double elm_toolbar_align_get | ( | const Elm_Toolbar * | obj | ) |

Control the alignment of the items.

Alignment of toolbar items, from 0.0 to indicates to align left, to 1.0, to align to right. 0.5 centralize items.

Centered items by default.

Parameters

  [in] | obj | The object.

Returns
  The new alignment, a float between 0.0 and 1.0.

References elm_obj_toolbar_align_get().

## ◆ elm_toolbar_select_mode_set()

void elm_toolbar_select_mode_set | ( | Elm_Toolbar * | obj,
|  | Elm_Object_Select_Mode | mode
| ) |  |

Control the toolbar select mode.

elm_toolbar_select_mode_set() changes item select mode in the toolbar widget. - ELM_OBJECT_SELECT_MODE_DEFAULT : Items will only call their selection func and callback when first becoming selected. Any further clicks will do nothing, unless you set always select mode. - ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected, every click will make the selected callbacks be called. - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select items entirely and they will neither appear selected nor call selected callback functions.

Parameters

  [in] | obj | The object.
  [in] | mode | The select mode If getting mode fails, it returns ELM_OBJECT_SELECT_MODE_MAX

References elm_obj_toolbar_select_mode_set().

## ◆ elm_toolbar_select_mode_get()

Elm_Object_Select_Mode elm_toolbar_select_mode_get | ( | const Elm_Toolbar * | obj | ) |

Control the toolbar select mode.

elm_toolbar_select_mode_set() changes item select mode in the toolbar widget. - ELM_OBJECT_SELECT_MODE_DEFAULT : Items will only call their selection func and callback when first becoming selected. Any further clicks will do nothing, unless you set always select mode. - ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected, every click will make the selected callbacks be called. - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select items entirely and they will neither appear selected nor call selected callback functions.

Parameters

  [in] | obj | The object.

Returns
  The select mode If getting mode fails, it returns ELM_OBJECT_SELECT_MODE_MAX

References elm_obj_toolbar_select_mode_get().

## ◆ elm_toolbar_icon_size_set()

void elm_toolbar_icon_size_set | ( | Elm_Toolbar * | obj,
|  | int | icon_size
| ) |  |

Control the icon size, in pixels, to be used by toolbar items.

Note
  Default value is $32. It reads value from elm config.

Parameters

  [in] | obj | The object.
  [in] | icon_size | The icon size in pixels

References elm_obj_toolbar_icon_size_set().

## ◆ elm_toolbar_icon_size_get()

int elm_toolbar_icon_size_get | ( | const Elm_Toolbar * | obj | ) |

Control the icon size, in pixels, to be used by toolbar items.

Note
  Default value is $32. It reads value from elm config.

Parameters

  [in] | obj | The object.

Returns
  The icon size in pixels

References elm_obj_toolbar_icon_size_get().

## ◆ elm_toolbar_shrink_mode_set()

void elm_toolbar_shrink_mode_set | ( | Elm_Toolbar * | obj,
|  | Elm_Toolbar_Shrink_Mode | shrink_mode
| ) |  |

Control the item displaying mode of a given toolbar widget `obj`.

The toolbar won't scroll under ELM_TOOLBAR_SHRINK_NONE mode, but it will enforce a minimum size, so that all the items will fit inside it. It won't scroll and won't show the items that don't fit under ELM_TOOLBAR_SHRINK_HIDE mode. Finally, it'll scroll under ELM_TOOLBAR_SHRINK_SCROLL mode, and it will create a button to aggregate items which didn't fit with the ELM_TOOLBAR_SHRINK_MENU mode.

If shrink mode is changed, Toolbar will send one of the following signal to each item for informing the current shrink mode. "elm,state,shrink,default" "elm,state,shrink,hide" "elm,state,shrink,scroll" "elm,state,shrink,menu" "elm,state,shrink,expand"

Warning
  This function's behavior will clash with those of elm_scroller_policy_set(), so use either one of them, but not both.

Parameters

  [in] | obj | The object.
  [in] | shrink_mode | Toolbar's items display behavior

References elm_obj_toolbar_shrink_mode_set().

## ◆ elm_toolbar_shrink_mode_get()

Elm_Toolbar_Shrink_Mode elm_toolbar_shrink_mode_get | ( | const Elm_Toolbar * | obj | ) |

Control the item displaying mode of a given toolbar widget `obj`.

The toolbar won't scroll under ELM_TOOLBAR_SHRINK_NONE mode, but it will enforce a minimum size, so that all the items will fit inside it. It won't scroll and won't show the items that don't fit under ELM_TOOLBAR_SHRINK_HIDE mode. Finally, it'll scroll under ELM_TOOLBAR_SHRINK_SCROLL mode, and it will create a button to aggregate items which didn't fit with the ELM_TOOLBAR_SHRINK_MENU mode.

If shrink mode is changed, Toolbar will send one of the following signal to each item for informing the current shrink mode. "elm,state,shrink,default" "elm,state,shrink,hide" "elm,state,shrink,scroll" "elm,state,shrink,menu" "elm,state,shrink,expand"

Warning
  This function's behavior will clash with those of elm_scroller_policy_set(), so use either one of them, but not both.

Parameters

  [in] | obj | The object.

Returns
  Toolbar's items display behavior

References elm_obj_toolbar_shrink_mode_get().

## ◆ elm_toolbar_menu_parent_set()

void elm_toolbar_menu_parent_set | ( | Elm_Toolbar * | obj,
|  | Efl_Canvas_Object * | parent
| ) |  |

Control the parent object of the toolbar items' menus.

Each item can be set as item menu, with elm_toolbar_item_menu_set().

For more details about setting the parent for toolbar menus, see elm_menu_parent_set().

See: elm_menu_parent_set() for details. See: elm_toolbar_item_menu_set() for details.

Parameters

  [in] | obj | The object.
  [in] | parent | The parent of the menu objects.

References elm_obj_toolbar_menu_parent_set().

## ◆ elm_toolbar_menu_parent_get()

Efl_Canvas_Object* elm_toolbar_menu_parent_get | ( | const Elm_Toolbar * | obj | ) |

Control the parent object of the toolbar items' menus.

Each item can be set as item menu, with elm_toolbar_item_menu_set().

For more details about setting the parent for toolbar menus, see elm_menu_parent_set().

See: elm_menu_parent_set() for details. See: elm_toolbar_item_menu_set() for details.

Parameters

  [in] | obj | The object.

Returns
  The parent of the menu objects.

References elm_obj_toolbar_menu_parent_get().

## ◆ elm_toolbar_standard_priority_set()

void elm_toolbar_standard_priority_set | ( | Elm_Toolbar * | obj,
|  | int | priority
| ) |  |

Set the standard priority of visible items in a toolbar.

If the priority of the item is up to standard priority, it is shown in basic panel. The other items are located in more menu or panel. The more menu or panel can be shown when the more item is clicked.

Parameters

  [in] | obj | The object.
  [in] | priority | The standard_priority of visible items

Since
  1.7

References elm_obj_toolbar_standard_priority_set().

## ◆ elm_toolbar_standard_priority_get()

int elm_toolbar_standard_priority_get | ( | const Elm_Toolbar * | obj | ) |

Set the standard priority of visible items in a toolbar.

If the priority of the item is up to standard priority, it is shown in basic panel. The other items are located in more menu or panel. The more menu or panel can be shown when the more item is clicked.

Parameters

  [in] | obj | The object.

Returns
  The standard_priority of visible items

Since
  1.7

References elm_obj_toolbar_standard_priority_get().

## ◆ elm_toolbar_more_item_get()

Elm_Widget_Item* elm_toolbar_more_item_get | ( | const Elm_Toolbar * | obj | ) |

Get the more item which is auto-generated by toolbar.

Toolbar generates 'more' item when there is no more space to fit items in and toolbar is in ELM_TOOLBAR_SHRINK_MENU or ELM_TOOLBAR_SHRINK_EXPAND mode. The more item can be manipulated by elm_object_item_text_set() and elm_object_item_content_set.

Parameters

  [in] | obj | The object.

Returns
  The toolbar more item.

References elm_obj_toolbar_more_item_get().

## ◆ elm_toolbar_item_insert_before()

Elm_Widget_Item* elm_toolbar_item_insert_before | ( | Elm_Toolbar * | obj,
|  | Elm_Widget_Item * | before,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Insert a new item into the toolbar object before item `before`.

A new item will be created and added to the toolbar. Its position in this toolbar will be just before item `before`.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | before | The toolbar item to insert before.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

References elm_obj_toolbar_item_insert_before().

## ◆ elm_toolbar_item_insert_after()

Elm_Widget_Item* elm_toolbar_item_insert_after | ( | Elm_Toolbar * | obj,
|  | Elm_Widget_Item * | after,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Insert a new item into the toolbar object after item `after`.

A new item will be created and added to the toolbar. Its position in this toolbar will be just after item `after`.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | after | The toolbar item to insert after.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

References elm_obj_toolbar_item_insert_after().

## ◆ elm_toolbar_item_append()

Elm_Widget_Item* elm_toolbar_item_append | ( | Elm_Toolbar * | obj,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Append item to the toolbar.

A new item will be created and appended to the toolbar, i.e., will be set as last item.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

References elm_obj_toolbar_item_append().

## ◆ elm_toolbar_items_count()

unsigned int elm_toolbar_items_count | ( | const Elm_Toolbar * | obj | ) |

Get the number of items in a toolbar.

Parameters

  [in] | obj | The object.

Returns
  The number of items in `obj` toolbar

References elm_obj_toolbar_items_count().

## ◆ elm_toolbar_item_prepend()

Elm_Widget_Item* elm_toolbar_item_prepend | ( | Elm_Toolbar * | obj,
|  | const char * | icon,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Prepend item to the toolbar.

A new item will be created and prepended to the toolbar, i.e., will be set as first item.

Items created with this method can be deleted with elm_object_item_del().

Associated `data` can be properly freed when item is deleted if a callback function is set with elm_object_item_del_cb_set().

If a function is passed as argument, it will be called every time this item is selected, i.e., the user clicks over an unselected item. If such function isn't needed, just passing `NULL` as `func` is enough. The same should be done for `data`.

Toolbar will load icon image from fdo or current theme. This behavior can be set by elm_toolbar_icon_order_lookup_set() function. If an absolute path is provided it will load it direct from a file.

Note
  This function does not accept relative icon path.

See: elm_toolbar_item_icon_set()

Parameters

  [in] | obj | The object.
  [in] | icon | A string with icon name or the absolute path of an image file.
  [in] | label | The label of the item.
  [in] | func | The function to call when the item is clicked.
  [in] | data | The data to associate with the item for related callbacks.

Returns
  The created item or `NULL` upon failure.

References elm_obj_toolbar_item_prepend().

## ◆ elm_toolbar_item_find_by_label()

Elm_Widget_Item* elm_toolbar_item_find_by_label | ( | const Elm_Toolbar * | obj,
|  | const char * | label
| ) |  |

Returns a pointer to a toolbar item by its label.

Parameters

  [in] | obj | The object.
  [in] | label | The label of the item to find.

Returns
  The pointer to the toolbar item matching `label` or `NULL` on failure.

References elm_obj_toolbar_item_find_by_label().

## ◆ elm_toolbar_add()

Evas_Object* elm_toolbar_add | ( | Evas_Object * | parent | ) |

Add a new toolbar widget to the given parent Elementary (container) object.

Parameters

  parent | The parent object.

Returns
  a new toolbar widget handle or `NULL`, on errors.

This function inserts a new toolbar widget on the canvas.

References EINA_SAFETY_ON_NULL_RETURN_VAL.

## ◆ elm_toolbar_reorder_mode_set()

void elm_toolbar_reorder_mode_set | ( | Evas_Object * | obj,
|  | Eina_Bool | reorder_mode
| ) |  |

Set reorder mode.

Parameters

  obj | The toolbar object
  reorder_mode | The reorder mode (`EINA_TRUE` = on, `EINA_FALSE` = off)

## ◆ elm_toolbar_reorder_mode_get()

Eina_Bool elm_toolbar_reorder_mode_get | ( | const Evas_Object * | obj | ) |

Get the reorder mode.

Parameters

  obj | The toolbar object

Returns
  The reorder mode (`EINA_TRUE` = on, `EINA_FALSE` = off)

References EINA_FALSE.

## ◆ elm_toolbar_transverse_expanded_set()

void elm_toolbar_transverse_expanded_set | ( | Evas_Object * | obj,
|  | Eina_Bool | transverse_expanded
| ) |  |

Set the item's transverse expansion of a given toolbar widget `obj`.

Parameters

  obj | The toolbar object.
  transverse_expanded | The transverse expansion of the item. (`EINA_TRUE` = on, `EINA_FALSE` = off, default = `EINA_FALSE`)

This will expand the transverse length of the item according the transverse length of the toolbar. The default is what the transverse length of the item is set according its min value.

## ◆ elm_toolbar_transverse_expanded_get()

Eina_Bool elm_toolbar_transverse_expanded_get | ( | const Evas_Object * | obj | ) |

Get the transverse expansion of toolbar `obj`.

Parameters

  obj | The toolbar object.

Returns
  The transverse expansion of the item. (`EINA_TRUE` = on, `EINA_FALSE` = off, default = `EINA_FALSE`)

See also
  elm_toolbar_transverse_expand_set() for details.

References EINA_FALSE.

## ◆ elm_toolbar_icon_order_lookup_set()

void elm_toolbar_icon_order_lookup_set | ( | Evas_Object * | obj,
|  | Elm_Icon_Lookup_Order | order
| ) |  |

Sets icon lookup order, for toolbar items' icons.

Icons added before calling this function will not be affected. The default lookup order is ELM_ICON_LOOKUP_THEME_FDO.

Parameters

  [in] | order | The icon lookup order. (If getting the icon order loopup fails, it returns ELM_ICON_LOOKUP_THEME_FDO)

## ◆ elm_toolbar_icon_order_lookup_get()

Elm_Icon_Lookup_Order elm_toolbar_icon_order_lookup_get | ( | const Evas_Object * | obj | ) |

Gets icon lookup order, for toolbar items' icons.

Icons added before calling this function will not be affected. The default lookup order is ELM_ICON_LOOKUP_THEME_FDO.

Returns
  The icon lookup order. (If getting the icon order loopup fails, it returns ELM_ICON_LOOKUP_THEME_FDO)

## ◆ elm_toolbar_horizontal_set()

void elm_toolbar_horizontal_set | ( | Evas_Object * | obj,
|  | Eina_Bool | horizontal
| ) |  |

Change a toolbar's orientation.

By default, a toolbar will be horizontal. Use this function to create a vertical toolbar.

Parameters

  [in] | horizontal | If `true`, the toolbar is horizontal.

## ◆ elm_toolbar_horizontal_get()

Eina_Bool elm_toolbar_horizontal_get | ( | const Evas_Object * | obj | ) |

Get toolbar's current orientation.

Use this function to get orientation of toolbar.

Returns
  If `true`, the toolbar is horizontal.

References EINA_FALSE, and EINA_TRUE.