\section{Spinner}
\label{group__Spinner}\index{Spinner@{Spinner}}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Spinner_gac259ed8ba5d597ceb982cc0170c37a63}{elm\+\_\+spinner\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Add a new spinner widget to the given parent Elementary (container) object. \end{DoxyCompactList}\item 
void \hyperlink{group__Spinner_ga5faa31fa6b9b5ccd0b3657ac013e641c}{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del} (Evas\+\_\+\+Object $\ast$obj, double value)
\begin{DoxyCompactList}\small\item\em Delete the special string display in the place of the numerical value. \end{DoxyCompactList}\item 
const char $\ast$ \hyperlink{group__Spinner_ga88fdf2be4a61e6312dac6d0ece11b088}{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get} (Evas\+\_\+\+Object $\ast$obj, double value)
\begin{DoxyCompactList}\small\item\em Get the special string display in the place of the numerical value. \end{DoxyCompactList}\end{DoxyCompactItemize}


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


 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics[width=\textwidth,height=\textheight/2,keepaspectratio=true]{img/widget/spinner/preview-00}}
\end{DoxyImageNoCaption}


A spinner is a widget which allows the user to increase or decrease numeric values using arrow buttons, or edit values directly, clicking over it and typing the new value.

By default the spinner will not wrap and has a label of \char`\"{}\%.\+0f\char`\"{} (just showing the integer value of the double).

A spinner has a label that is formatted with floating point values and thus accepts a printf-\/style format string, like “\%1.\+2f units”.

It also allows specific values to be replaced by pre-\/defined labels.

This widget inherits from the \hyperlink{group__Layout}{Layout} one, so that all the functions acting on it also work for spinner objects.

This widget emits the following signals, besides the ones sent from Layout\+:
\begin{DoxyItemize}
\item {\ttfamily \char`\"{}changed\char`\"{}} -\/ Whenever the spinner value is changed.
\item {\ttfamily \char`\"{}delay,changed\char`\"{}} -\/ A short time after the value is changed by the user. This will be called only when the user stops dragging for a very short period or when they release their finger/mouse, so it avoids possibly expensive reactions to the value change.
\item {\ttfamily \char`\"{}language,changed\char`\"{}} -\/ the program\textquotesingle{}s language changed
\item {\ttfamily \char`\"{}focused\char`\"{}} -\/ When the spinner has received focus. (since 1.\+8)
\item {\ttfamily \char`\"{}unfocused\char`\"{}} -\/ When the spinner has lost focus. (since 1.\+8)
\item {\ttfamily \char`\"{}spinner,drag,start\char`\"{}} -\/ When dragging has started. (since 1.\+8)
\item {\ttfamily \char`\"{}spinner,drag,stop\char`\"{}} -\/ When dragging has stopped. (since 1.\+8)
\end{DoxyItemize}

Available styles for it\+:
\begin{DoxyItemize}
\item {\ttfamily \char`\"{}default\char`\"{}};
\item {\ttfamily \char`\"{}vertical\char`\"{}}\+: up/down buttons at the right side and text left aligned.
\end{DoxyItemize}

Supported elm\+\_\+object common A\+P\+Is. \begin{DoxyItemize}
\item \hyperlink{group__General_ga1beada7edf5d714c0dba5459bcc993fc}{elm\+\_\+object\+\_\+signal\+\_\+emit} \item \hyperlink{group__General_ga6f9574b798efcd454afdac6f2904f633}{elm\+\_\+object\+\_\+signal\+\_\+callback\+\_\+add} \item \hyperlink{group__General_ga3c76b5447be522d647e352cb7ff7c9e6}{elm\+\_\+object\+\_\+signal\+\_\+callback\+\_\+del} \item \hyperlink{group__General_ga6849a57df3316eabad5bec443bf87597}{elm\+\_\+object\+\_\+disabled\+\_\+set} \item \hyperlink{group__General_ga3ecb0d6b4e76ff39006f218942c7950d}{elm\+\_\+object\+\_\+disabled\+\_\+get}\end{DoxyItemize}
Here is an example on its usage\+: \hyperlink{spinner_example}{Spinner widget example} 

\subsection{Function Documentation}
\index{Spinner@{Spinner}!elm\+\_\+spinner\+\_\+add@{elm\+\_\+spinner\+\_\+add}}
\index{elm\+\_\+spinner\+\_\+add@{elm\+\_\+spinner\+\_\+add}!Spinner@{Spinner}}
\subsubsection[{elm\+\_\+spinner\+\_\+add(\+Evas\+\_\+\+Object $\ast$parent)}]{\setlength{\rightskip}{0pt plus 5cm}Evas\+\_\+\+Object$\ast$ elm\+\_\+spinner\+\_\+add (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{parent}
\end{DoxyParamCaption}
)}\label{group__Spinner_gac259ed8ba5d597ceb982cc0170c37a63}


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


\begin{DoxyParams}{Parameters}
{\em parent} & The parent object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a new spinner widget handle or {\ttfamily N\+U\+L\+L}, on errors.
\end{DoxyReturn}
This function inserts a new spinner widget on the canvas. \index{Spinner@{Spinner}!elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del@{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del}}
\index{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del@{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del}!Spinner@{Spinner}}
\subsubsection[{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del(\+Evas\+\_\+\+Object $\ast$obj, double value)}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+del (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{double}]{value}
\end{DoxyParamCaption}
)}\label{group__Spinner_ga5faa31fa6b9b5ccd0b3657ac013e641c}


Delete the special string display in the place of the numerical value. 


\begin{DoxyParams}{Parameters}
{\em obj} & The spinner object. \\
\hline
{\em value} & The replaced value.\\
\hline
\end{DoxyParams}
It will remove a previously added special value. After this, the spinner will display the value itself instead of a label.

\begin{DoxySeeAlso}{See also}
elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+add() for more details.
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\index{Spinner@{Spinner}!elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get@{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get}}
\index{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get@{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get}!Spinner@{Spinner}}
\subsubsection[{elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get(\+Evas\+\_\+\+Object $\ast$obj, double value)}]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+get (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{double}]{value}
\end{DoxyParamCaption}
)}\label{group__Spinner_ga88fdf2be4a61e6312dac6d0ece11b088}


Get the special string display in the place of the numerical value. 


\begin{DoxyParams}{Parameters}
{\em obj} & The spinner object. \\
\hline
{\em value} & The replaced value. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The used label.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
elm\+\_\+spinner\+\_\+special\+\_\+value\+\_\+add() for more details.
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
