\section{Popup}
\label{group__Popup}\index{Popup@{Popup}}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Popup_ga77e3bdfb1b5f11d92d8ce0e15adb19ba}{elm\+\_\+popup\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Adds a new Popup to the parent. \end{DoxyCompactList}\end{DoxyCompactItemize}


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


This widget is an enhancement of \hyperlink{group__Notify}{Notify}. In addition to content area, there are two optional sections, namely title area and action area.

The popup widget displays its content with a particular orientation in the parent area. This orientation can be one among top, center, bottom, left, top-\/left, top-\/right, bottom-\/left and bottom-\/right. Content part of Popup can be an Evas Object set by application or it can be Text set by application or set of items containing an icon and/or text. The content/item-\/list can be removed using elm\+\_\+object\+\_\+content\+\_\+set with second parameter passed as N\+U\+L\+L.

The following figures show the textual layouts of popup in which Title Area and Action area are optional ones. Action area can have up to 3 buttons handled using elm\+\_\+object common A\+P\+Is mentioned below. If user wants to have more than 3 buttons then these buttons can be put inside the items of a list as content. User needs to handle the clicked signal of these action buttons if required. No event is processed by the widget automatically when clicked on these action buttons.


\begin{DoxyPre}\end{DoxyPre}



\begin{DoxyPre}*|---------------------|    |---------------------|    |---------------------|
*|     Title Area      |    |     Title Area      |    |     Title Area      |
*|Icon|    Text        |    |Icon|    Text        |    |Icon|    Text        |
*|---------------------|    |---------------------|    |---------------------|
*|       Item 1        |    |                     |    |                     |
*|---------------------|    |                     |    |                     |
*|       Item 2        |    |                     |    |    Description      |
*|---------------------|    |       Content       |    |                     |
*|       Item 3        |    |                     |    |                     |
*|---------------------|    |                     |    |                     |
*|         .           |    |---------------------|    |---------------------|
*|         .           |    |     Action Area     |    |     Action Area     |
*|         .           |    | Btn1  |Btn2|. |Btn3 |    | Btn1  |Btn2|  |Btn3 |
*|---------------------|    |---------------------|    |---------------------|
*|       Item N        |     Content Based Layout     Description based Layout
*|---------------------|
*|     Action Area     |
*| Btn1  |Btn2|. |Btn3 |
*|---------------------|
    Item Based Layout\end{DoxyPre}



\begin{DoxyPre}  \end{DoxyPre}


Timeout can be set on expiry of which popup instance hides and sends a smart signal \char`\"{}timeout\char`\"{} to the user. The visible region of popup is surrounded by a translucent region called Blocked Event area. By clicking on Blocked Event area, the signal \char`\"{}block,clicked\char`\"{} is sent to the application. This block event area can be avoided by using A\+P\+I elm\+\_\+popup\+\_\+allow\+\_\+events\+\_\+set. When gets hidden, popup does not get destroyed automatically, application should destroy the popup instance after use. To control the maximum height of the internal scroller for item, we use the height of the action area which is passed by theme based on the number of buttons currently set to popup.

Popup sets the focus to itself when evas\+\_\+object\+\_\+show is called on popup. To set the focus into popup\textquotesingle{}s contents and buttons automatically, evas\+\_\+object\+\_\+show on popup should be called after setting all the contents and buttons of popup.

This widget inherits from the \hyperlink{group__Layout}{Layout} one, so that all the functions acting on it also work for popup objects (since 1.\+8).

This widget emits the following signals, besides the ones sent from Layout\+: \begin{DoxyItemize}
\item {\ttfamily \char`\"{}timeout\char`\"{}} -\/ whenever popup is closed as a result of timeout. \item {\ttfamily \char`\"{}block,clicked\char`\"{}} -\/ whenever user taps on Blocked Event area. \item {\ttfamily \char`\"{}focused\char`\"{}} -\/ When the popup has received focus. (since 1.\+8) \item {\ttfamily \char`\"{}unfocused\char`\"{}} -\/ When the popup has lost focus. (since 1.\+8) \item \char`\"{}language,changed\char`\"{} -\/ the program\textquotesingle{}s language changed (since 1.\+8) \item \char`\"{}item,focused\char`\"{} -\/ When the popup item has received focus. (since 1.\+10) \item \char`\"{}item,unfocused\char`\"{} -\/ When the popup item has lost focus. (since 1.\+10)\end{DoxyItemize}
Styles available for Popup \begin{DoxyItemize}
\item \char`\"{}default\char`\"{}\end{DoxyItemize}
Default contents parts of the popup widget that you can use are\+: \begin{DoxyItemize}
\item \char`\"{}default\char`\"{} -\/ The content of the popup \item \char`\"{}title,icon\char`\"{} -\/ Title area\textquotesingle{}s icon \item \char`\"{}button1\char`\"{} -\/ 1st button of the action area \item \char`\"{}button2\char`\"{} -\/ 2nd button of the action area \item \char`\"{}button3\char`\"{} -\/ 3rd button of the action area\end{DoxyItemize}
Default text parts of the popup widget that you can use are\+: \begin{DoxyItemize}
\item \char`\"{}title,text\char`\"{} -\/ A title area\textquotesingle{}s label \item \char`\"{}default\char`\"{} -\/ A content-\/text set in the content area of the widget\end{DoxyItemize}
Default contents parts of the popup items that you can use are\+: \begin{DoxyItemize}
\item \char`\"{}default\char`\"{} -\/ An item\textquotesingle{}s icon\end{DoxyItemize}
Default text parts of the popup items that you can use are\+: \begin{DoxyItemize}
\item \char`\"{}default\char`\"{} -\/ An item\textquotesingle{}s label\end{DoxyItemize}
Supported elm\+\_\+object\+\_\+item common A\+P\+Is. \begin{DoxyItemize}
\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\+\_\+disabled\+\_\+set \item elm\+\_\+object\+\_\+item\+\_\+disabled\+\_\+get \item elm\+\_\+object\+\_\+item\+\_\+del \item elm\+\_\+object\+\_\+item\+\_\+signal\+\_\+emit\end{DoxyItemize}
Here are some sample code to illustrate Popup usage\+: \begin{DoxyItemize}
\item \hyperlink{popup_example_01_c}{popup\+\_\+example\+\_\+01.\+c} \item \hyperlink{popup_example_02_c}{popup\+\_\+example\+\_\+02.\+c} \item \hyperlink{popup_example_03_c}{popup\+\_\+example\+\_\+03.\+c} \end{DoxyItemize}


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


Adds a new Popup to the parent. 


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