\section{Toolbar}
\label{group__Toolbar}\index{Toolbar@{Toolbar}}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \+\_\+\+Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State \hyperlink{group__Toolbar_gab69fcff72c5b0e4fb852d5fb5a8929ff}{Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State}
\begin{DoxyCompactList}\small\item\em State of a Elm\+\_\+\+Toolbar\+\_\+\+Item. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{group__Toolbar_ga5f792049670db4a11133185cbebc1ffc}{elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset} (\hyperlink{group__General_ga13a0c231414b86e62f68afe3c6fb462b}{Elm\+\_\+\+Object\+\_\+\+Item} $\ast$it)
\begin{DoxyCompactList}\small\item\em Unset the state of {\ttfamily it}. \end{DoxyCompactList}\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Toolbar_ga0c0841ae232ebd6a9628b868d4e95b6f}{elm\+\_\+toolbar\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Add a new toolbar widget to the given parent Elementary (container) object. \end{DoxyCompactList}\item 
void \hyperlink{group__Toolbar_ga1ab93e8742fa6347b5f1325120edf94a}{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set} (Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool reorder\+\_\+mode)
\begin{DoxyCompactList}\small\item\em Set reorder mode. \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool \hyperlink{group__Toolbar_gaa8df55e22fadb6ba9cb9c3c37435ce12}{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get} (const Evas\+\_\+\+Object $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get the reorder mode. \end{DoxyCompactList}\item 
void \hyperlink{group__Toolbar_gaa744a29f023f92c77d7b0ff93be0676b}{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set} (Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool transverse\+\_\+expanded)
\begin{DoxyCompactList}\small\item\em Set the item\textquotesingle{}s transverse expansion of a given toolbar widget {\ttfamily obj}. \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool \hyperlink{group__Toolbar_ga0bcb747ec6ad7b6ef3d775c397823815}{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get} (const Evas\+\_\+\+Object $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get the transverse expansion of toolbar {\ttfamily obj}. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics[width=\textwidth,height=\textheight/2,keepaspectratio=true]{toolbar_inheritance_tree}}
\end{DoxyImageNoCaption}


 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics[width=\textwidth]{img/widget/toolbar/preview-00}}
\end{DoxyImageNoCaption}


 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics[width=\textwidth]{toolbar}}
\end{DoxyImageNoCaption}


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\textquotesingle{}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 {\bfseries }  elm-\/scrollable-\/interface interface, so that all (non-\/deprecated) functions for the base \hyperlink{group__Scroller}{Scroller} widget also work for toolbars (since 1.\+8)

Smart callbacks one can listen to\+:
\begin{DoxyItemize}
\item {\ttfamily \char`\"{}clicked\char`\"{}} -\/ when the user clicks on a toolbar item and becomes selected.
\item {\ttfamily \char`\"{}longpressed\char`\"{}} -\/ when the toolbar is pressed for a certain amount of time.
\item {\ttfamily \char`\"{}language,changed\char`\"{}} -\/ when the program language changes.
\item {\ttfamily \char`\"{}focused\char`\"{}} -\/ When the toolbar has received focus. (since 1.\+8)
\item {\ttfamily \char`\"{}unfocused\char`\"{}} -\/ When the toolbar has lost focus. (since 1.\+8)
\item {\ttfamily \char`\"{}item,focused\char`\"{}} -\/ When the toolbar item has received focus. (since 1.\+10)
\item {\ttfamily \char`\"{}item,unfocused\char`\"{}} -\/ When the toolbar item has lost focus. (since 1.\+10)
\item {\ttfamily \char`\"{}selected\char`\"{}} -\/ when an item is selected. {\ttfamily event\+\_\+info} is a selected item. (since 1.\+11)
\item {\ttfamily \char`\"{}unselected\char`\"{}} -\/ when an item is unselected. {\ttfamily event\+\_\+info} is a unselected item. (since 1.\+11)
\end{DoxyItemize}

Available styles for it\+:
\begin{DoxyItemize}
\item {\ttfamily \char`\"{}default\char`\"{}} 
\item {\ttfamily \char`\"{}transparent\char`\"{}} -\/ no background or shadow, just show the content
\end{DoxyItemize}

Default text parts of the toolbar items that you can use for are\+: \begin{DoxyItemize}
\item \char`\"{}default\char`\"{} -\/ A label of the toolbar item\end{DoxyItemize}
Supported elm\+\_\+object\+\_\+item common A\+P\+Is. \begin{DoxyItemize}
\item elm\+\_\+object\+\_\+item\+\_\+del \item elm\+\_\+object\+\_\+item\+\_\+disabled\+\_\+set \item elm\+\_\+object\+\_\+item\+\_\+disabled\+\_\+get \item elm\+\_\+object\+\_\+item\+\_\+part\+\_\+text\+\_\+set \item elm\+\_\+object\+\_\+item\+\_\+part\+\_\+text\+\_\+get \item elm\+\_\+object\+\_\+item\+\_\+part\+\_\+content\+\_\+set \item elm\+\_\+object\+\_\+item\+\_\+part\+\_\+content\+\_\+get \item elm\+\_\+object\+\_\+item\+\_\+part\+\_\+content\+\_\+unset \item elm\+\_\+object\+\_\+item\+\_\+focus\+\_\+set \item elm\+\_\+object\+\_\+item\+\_\+focus\+\_\+get\end{DoxyItemize}
List of examples\+: \begin{DoxyItemize}
\item \hyperlink{toolbar_example_01}{Toolbar Example -\/ Simple Items} \item \hyperlink{toolbar_example_02}{Toolbar Example -\/ Items with States} \item \hyperlink{toolbar_example_03}{Toolbar Example -\/ Items with Menus} \end{DoxyItemize}


\subsection{Typedef Documentation}
\index{Toolbar@{Toolbar}!Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State@{Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State}}
\index{Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State@{Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State}{Elm_Toolbar_Item_State}}]{\setlength{\rightskip}{0pt plus 5cm}typedef struct \+\_\+\+Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State {\bf Elm\+\_\+\+Toolbar\+\_\+\+Item\+\_\+\+State}}\label{group__Toolbar_gab69fcff72c5b0e4fb852d5fb5a8929ff}


State of a Elm\+\_\+\+Toolbar\+\_\+\+Item. 

Can be created with elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+add() and removed with elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+del(). 

\subsection{Function Documentation}
\index{Toolbar@{Toolbar}!elm\+\_\+toolbar\+\_\+add@{elm\+\_\+toolbar\+\_\+add}}
\index{elm\+\_\+toolbar\+\_\+add@{elm\+\_\+toolbar\+\_\+add}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{elm\+\_\+toolbar\+\_\+add(\+Evas\+\_\+\+Object $\ast$parent)}{elm_toolbar_add(Evas_Object *parent)}}]{\setlength{\rightskip}{0pt plus 5cm}Evas\+\_\+\+Object$\ast$ elm\+\_\+toolbar\+\_\+add (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{parent}
\end{DoxyParamCaption}
)}\label{group__Toolbar_ga0c0841ae232ebd6a9628b868d4e95b6f}


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


\begin{DoxyParams}{Parameters}
{\em parent} & The parent object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a new toolbar widget handle or {\ttfamily N\+U\+LL}, on errors.
\end{DoxyReturn}
This function inserts a new toolbar widget on the canvas. 

References elm\+\_\+config\+\_\+scale\+\_\+get(), elm\+\_\+icon\+\_\+add(), and elm\+\_\+image\+\_\+file\+\_\+set().

\index{Toolbar@{Toolbar}!elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset@{elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset}}
\index{elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset@{elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset(\+Elm\+\_\+\+Object\+\_\+\+Item $\ast$it)}{elm_toolbar_item_state_unset(Elm_Object_Item *it)}}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset (
\begin{DoxyParamCaption}
\item[{{\bf Elm\+\_\+\+Object\+\_\+\+Item} $\ast$}]{it}
\end{DoxyParamCaption}
)}\label{group__Toolbar_ga5f792049670db4a11133185cbebc1ffc}


Unset the state of {\ttfamily it}. 


\begin{DoxyParams}{Parameters}
{\em it} & The toolbar item.\\
\hline
\end{DoxyParams}
The default icon and label from this item will be displayed.

\begin{DoxySeeAlso}{See also}
elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+set() for more details. 
\end{DoxySeeAlso}


Referenced by elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get().

\index{Toolbar@{Toolbar}!elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get@{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get}}
\index{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get@{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get(const Evas\+\_\+\+Object $\ast$obj)}{elm_toolbar_reorder_mode_get(const Evas_Object *obj)}}]{\setlength{\rightskip}{0pt plus 5cm}Eina\+\_\+\+Bool elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+get (
\begin{DoxyParamCaption}
\item[{const Evas\+\_\+\+Object $\ast$}]{obj}
\end{DoxyParamCaption}
)}\label{group__Toolbar_gaa8df55e22fadb6ba9cb9c3c37435ce12}


Get the reorder mode. 


\begin{DoxyParams}{Parameters}
{\em obj} & The toolbar object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The reorder mode ({\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE} = on, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} = off) 
\end{DoxyReturn}
\index{Toolbar@{Toolbar}!elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set@{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set}}
\index{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set@{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set(\+Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool reorder\+\_\+mode)}{elm_toolbar_reorder_mode_set(Evas_Object *obj, Eina_Bool reorder_mode)}}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+toolbar\+\_\+reorder\+\_\+mode\+\_\+set (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{Eina\+\_\+\+Bool}]{reorder\+\_\+mode}
\end{DoxyParamCaption}
)}\label{group__Toolbar_ga1ab93e8742fa6347b5f1325120edf94a}


Set reorder mode. 


\begin{DoxyParams}{Parameters}
{\em obj} & The toolbar object \\
\hline
{\em reorder\+\_\+mode} & The reorder mode ({\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE} = on, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} = off) \\
\hline
\end{DoxyParams}
\index{Toolbar@{Toolbar}!elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get@{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get}}
\index{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get@{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get(const Evas\+\_\+\+Object $\ast$obj)}{elm_toolbar_transverse_expanded_get(const Evas_Object *obj)}}]{\setlength{\rightskip}{0pt plus 5cm}Eina\+\_\+\+Bool elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+get (
\begin{DoxyParamCaption}
\item[{const Evas\+\_\+\+Object $\ast$}]{obj}
\end{DoxyParamCaption}
)}\label{group__Toolbar_ga0bcb747ec6ad7b6ef3d775c397823815}


Get the transverse expansion of toolbar {\ttfamily obj}. 


\begin{DoxyParams}{Parameters}
{\em obj} & The toolbar object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The transverse expansion of the item. ({\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE} = on, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} = off, default = {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE})
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
elm\+\_\+toolbar\+\_\+transverse\+\_\+expand\+\_\+set() for details. 
\end{DoxySeeAlso}


References elm\+\_\+icon\+\_\+add(), elm\+\_\+menu\+\_\+parent\+\_\+set(), and elm\+\_\+toolbar\+\_\+item\+\_\+state\+\_\+unset().

\index{Toolbar@{Toolbar}!elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set@{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set}}
\index{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set@{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set}!Toolbar@{Toolbar}}
\subsubsection[{\texorpdfstring{elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set(\+Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool transverse\+\_\+expanded)}{elm_toolbar_transverse_expanded_set(Evas_Object *obj, Eina_Bool transverse_expanded)}}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+toolbar\+\_\+transverse\+\_\+expanded\+\_\+set (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{Eina\+\_\+\+Bool}]{transverse\+\_\+expanded}
\end{DoxyParamCaption}
)}\label{group__Toolbar_gaa744a29f023f92c77d7b0ff93be0676b}


Set the item\textquotesingle{}s transverse expansion of a given toolbar widget {\ttfamily obj}. 


\begin{DoxyParams}{Parameters}
{\em obj} & The toolbar object. \\
\hline
{\em transverse\+\_\+expanded} & The transverse expansion of the item. ({\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE} = on, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE} = off, default = {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE})\\
\hline
\end{DoxyParams}
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. 