\section{Radio}
\label{group__Radio}\index{Radio@{Radio}}


Radio is a widget that allows for 1 or more options to be displayed and have the user choose only 1 of them.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Radio_gab905f905e9a90883d482035e457fc7ef}{elm\+\_\+radio\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Add a new radio to the parent. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Radio is a widget that allows for 1 or more options to be displayed and have the user choose only 1 of them. 

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


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


A radio object contains an indicator, an optional Label and an optional icon object. While it\textquotesingle{}s possible to have a group of only one radio they, are normally used in groups of 2 or more.

elm\+\_\+radio objects are grouped in a slightly different, compared to other UI toolkits. There is no separate group name/id to remember or manage. The members represent the group, there are the group. To make a group, use elm\+\_\+radio\+\_\+group\+\_\+add() and pass existing radio object and the new radio object.

The radio object(s) will select from one of a set of integer values, so any value they are configuring needs to be mapped to a set of integers. To configure what value that radio object represents, use elm\+\_\+radio\+\_\+state\+\_\+value\+\_\+set() to set the integer it represents. To set the value the whole group(which one is currently selected) is to indicate use elm\+\_\+radio\+\_\+value\+\_\+set() on any group member, and to get the groups value use elm\+\_\+radio\+\_\+value\+\_\+get(). For convenience the radio objects are also able to directly set an integer(int) to the value that is selected. To specify the pointer to this integer to modify, use elm\+\_\+radio\+\_\+value\+\_\+pointer\+\_\+set(). The radio objects will modify this directly. That implies the pointer must point to valid memory for as long as the radio objects exist.

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

This widget emits the following signals, besides the ones sent from Layout\+: \begin{DoxyItemize}
\item {\ttfamily \char`\"{}changed\char`\"{}} -\/ This is called when the radio object is selected. If you want to trace the state change of a radio group, you should add this callback to all the radio objects in that group. \item {\ttfamily \char`\"{}focused\char`\"{}} -\/ When the radio has received focus. (since 1.\+8) \item {\ttfamily \char`\"{}unfocused\char`\"{}} -\/ When the radio has lost focus. (since 1.\+8) \item {\ttfamily \char`\"{}language,changed\char`\"{}} -\/ the program\textquotesingle{}s language changed (since 1.\+9)\end{DoxyItemize}
Default content parts of the radio widget that you can use for are\+: \begin{DoxyItemize}
\item \char`\"{}icon\char`\"{} -\/ An icon of the radio\end{DoxyItemize}
Default text parts of the radio widget that you can use for are\+: \begin{DoxyItemize}
\item \char`\"{}default\char`\"{} -\/ A label of the radio\end{DoxyItemize}
Supported elm\+\_\+object common A\+P\+Is. \begin{DoxyItemize}
\item \hyperlink{group__General_ga9c088563c442670796564d2e5158f154}{elm\+\_\+object\+\_\+part\+\_\+text\+\_\+set} \item \hyperlink{group__General_ga965e34858eb4b80b7a4b5feda732bf27}{elm\+\_\+object\+\_\+part\+\_\+text\+\_\+get} \item \hyperlink{group__General_ga0531ec8867c72def7c780601764ca642}{elm\+\_\+object\+\_\+part\+\_\+content\+\_\+set} \item \hyperlink{group__General_ga32413f4d59d8232cd362a922a281abf1}{elm\+\_\+object\+\_\+part\+\_\+content\+\_\+get} \item \hyperlink{group__General_gadc5a1df25fe17e31739841133b53b5fc}{elm\+\_\+object\+\_\+part\+\_\+content\+\_\+unset} \item \hyperlink{group__General_ga6849a57df3316eabad5bec443bf87597}{elm\+\_\+object\+\_\+disabled\+\_\+set} \item \hyperlink{group__General_ga3ecb0d6b4e76ff39006f218942c7950d}{elm\+\_\+object\+\_\+disabled\+\_\+get}\end{DoxyItemize}
\hyperlink{tutorial_radio}{Radio example} show most of this A\+PI in action. 

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


Add a new radio to the parent. 


\begin{DoxyParams}{Parameters}
{\em parent} & The parent object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The new object or N\+U\+LL if it cannot be created 
\end{DoxyReturn}
