\hypertarget{group__Elm__Inwin}{}\section{Inwin}
\label{group__Elm__Inwin}\index{Inwin@{Inwin}}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Elm__Inwin_gad77e525491f26c94a910e3737985c18d}\label{group__Elm__Inwin_gad77e525491f26c94a910e3737985c18d}} 
\#define \mbox{\hyperlink{group__Elm__Inwin_gad77e525491f26c94a910e3737985c18d}{E\+L\+M\+\_\+\+I\+N\+W\+I\+N\+\_\+\+C\+L\+A\+SS}}~elm\+\_\+inwin\+\_\+class\+\_\+get()
\begin{DoxyCompactList}\small\item\em Elementary inwin class. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Elm__Inwin_ga4e1c43f9f3d7c154efb4e9f4728f5cab}{elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Activates an inwin object, ensuring its visibility. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Inwin_ga4a9563c589ae3ab597e0caefb5f7477e}{elm\+\_\+win\+\_\+inwin\+\_\+activate}} (Elm\+\_\+\+Inwin $\ast$obj)
\begin{DoxyCompactList}\small\item\em Activates an inwin object, ensuring its visibility. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Elm__Inwin_gaf99e0cf10681793f3ae153723de0156b}{elm\+\_\+win\+\_\+inwin\+\_\+add}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$parent)
\begin{DoxyCompactList}\small\item\em Adds an inwin to the current window. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Inwin_gaeb4bd299e4d9b4dc040ac29e1b1d6b1e}{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$content)
\begin{DoxyCompactList}\small\item\em Set the content of an inwin object. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Elm__Inwin_gadb45fb65aa0b076116e02d0e2b34346c}{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get the content of an inwin object. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Elm__Inwin_ga4df7cab00fe961526b4558e26f25faeb}{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Unset the content of an inwin object. \end{DoxyCompactList}\end{DoxyCompactItemize}


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


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


An inwin is a window inside a window that is useful for a quick popup. It does not hover.

It works by creating an object that will occupy the entire window, so it must be created using an elm\+\_\+win as parent only. The inwin object can be hidden or restacked below every other object if it\textquotesingle{}s needed to show what\textquotesingle{}s behind it without destroying it. If this is done, the \mbox{\hyperlink{group__Elm__Inwin_ga4a9563c589ae3ab597e0caefb5f7477e}{elm\+\_\+win\+\_\+inwin\+\_\+activate()}} function can be used to bring it back to full visibility again.

There are three styles available in the default theme. These are\+: \begin{DoxyItemize}
\item default\+: The inwin is sized to take over most of the window it\textquotesingle{}s placed in. \item minimal\+: The size of the inwin will be the minimum necessary to show its contents. \item minimal\+\_\+vertical\+: Horizontally, the inwin takes as much space as possible, but it\textquotesingle{}s sized vertically the most it needs to fit its\textbackslash{} contents.\end{DoxyItemize}
This widget inherits from the Layout one, so that all the functions acting on it also work for inner windown objects. It also emits the signals inherited from Layout.

Default content parts of the inwin that you can use for are\+: \begin{DoxyItemize}
\item \char`\"{}default\char`\"{} A content of the inwin\end{DoxyItemize}
Some examples of Inwin can be found in the following\+: \begin{DoxyItemize}
\item inwin\+\_\+example\+\_\+01 \end{DoxyItemize}


\subsection{Function Documentation}
\mbox{\Hypertarget{group__Elm__Inwin_ga4e1c43f9f3d7c154efb4e9f4728f5cab}\label{group__Elm__Inwin_ga4e1c43f9f3d7c154efb4e9f4728f5cab}} 
\index{Inwin@{Inwin}!elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate@{elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate}}
\index{elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate@{elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate}!Inwin@{Inwin}}
\subsubsection{\texorpdfstring{elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate()}{elm\_obj\_win\_inwin\_activate()}}
{\footnotesize\ttfamily E\+O\+A\+PI void elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj }\end{DoxyParamCaption})}



Activates an inwin object, ensuring its visibility. 

This function will make sure that the inwin {\ttfamily obj} is completely visible by calling \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9cbc13661584e49fb9d9cdab514a1eeb}{evas\+\_\+object\+\_\+show()}} and evas\+\_\+object\+\_\+raise() on it, to bring it to the front. It also sets the keyboard focus to it, which will be passed onto its content.

The object\textquotesingle{}s theme will also receive the signal \char`\"{}elm,action,show\char`\"{} with source \char`\"{}elm\char`\"{}. 
\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em obj} & The object. \\
\hline
\end{DoxyParams}


Referenced by elm\+\_\+win\+\_\+inwin\+\_\+activate().

\mbox{\Hypertarget{group__Elm__Inwin_ga4a9563c589ae3ab597e0caefb5f7477e}\label{group__Elm__Inwin_ga4a9563c589ae3ab597e0caefb5f7477e}} 
\index{Inwin@{Inwin}!elm\+\_\+win\+\_\+inwin\+\_\+activate@{elm\+\_\+win\+\_\+inwin\+\_\+activate}}
\index{elm\+\_\+win\+\_\+inwin\+\_\+activate@{elm\+\_\+win\+\_\+inwin\+\_\+activate}!Inwin@{Inwin}}
\subsubsection{\texorpdfstring{elm\+\_\+win\+\_\+inwin\+\_\+activate()}{elm\_win\_inwin\_activate()}}
{\footnotesize\ttfamily void elm\+\_\+win\+\_\+inwin\+\_\+activate (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Inwin $\ast$}]{obj }\end{DoxyParamCaption})}



Activates an inwin object, ensuring its visibility. 

This function will make sure that the inwin {\ttfamily obj} is completely visible by calling \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9cbc13661584e49fb9d9cdab514a1eeb}{evas\+\_\+object\+\_\+show()}} and evas\+\_\+object\+\_\+raise() on it, to bring it to the front. It also sets the keyboard focus to it, which will be passed onto its content.

The object\textquotesingle{}s theme will also receive the signal \char`\"{}elm,action,show\char`\"{} with source \char`\"{}elm\char`\"{}. 
\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em obj} & The object. \\
\hline
\end{DoxyParams}


References elm\+\_\+obj\+\_\+win\+\_\+inwin\+\_\+activate().

\mbox{\Hypertarget{group__Elm__Inwin_gaf99e0cf10681793f3ae153723de0156b}\label{group__Elm__Inwin_gaf99e0cf10681793f3ae153723de0156b}} 
\index{Inwin@{Inwin}!elm\+\_\+win\+\_\+inwin\+\_\+add@{elm\+\_\+win\+\_\+inwin\+\_\+add}}
\index{elm\+\_\+win\+\_\+inwin\+\_\+add@{elm\+\_\+win\+\_\+inwin\+\_\+add}!Inwin@{Inwin}}
\subsubsection{\texorpdfstring{elm\+\_\+win\+\_\+inwin\+\_\+add()}{elm\_win\_inwin\_add()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}}$\ast$ elm\+\_\+win\+\_\+inwin\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{parent }\end{DoxyParamCaption})}



Adds an inwin to the current window. 

The {\ttfamily obj} used as parent {\bfseries M\+U\+ST} be an Elementary Window. Never call this function with anything other than the top-\/most window as its parameter, unless you are fond of undefined behavior.

After creating the object, the widget will set itself as resize object for the window with \mbox{\hyperlink{group__Elm__Win_ga505d6bd217e5ee01e82b548ec35986eb}{elm\+\_\+win\+\_\+resize\+\_\+object\+\_\+add()}}, so when shown it will appear to cover almost the entire window (how much of it depends on its content and the style used). It must not be added into other container objects and it needs not be moved or resized manually.


\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}
\mbox{\Hypertarget{group__Elm__Inwin_gaeb4bd299e4d9b4dc040ac29e1b1d6b1e}\label{group__Elm__Inwin_gaeb4bd299e4d9b4dc040ac29e1b1d6b1e}} 
\index{Inwin@{Inwin}!elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set@{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set}}
\index{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set@{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set}!Inwin@{Inwin}}
\subsubsection{\texorpdfstring{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set()}{elm\_win\_inwin\_content\_set()}}
{\footnotesize\ttfamily void elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{content }\end{DoxyParamCaption})}



Set the content of an inwin object. 

Once the content object is set, a previously set one will be deleted. If you want to keep that old content object, use the \mbox{\hyperlink{group__Elm__Inwin_ga4df7cab00fe961526b4558e26f25faeb}{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset()}} function.


\begin{DoxyParams}{Parameters}
{\em obj} & The inwin object \\
\hline
{\em content} & The object to set as content \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Elm__Inwin_gadb45fb65aa0b076116e02d0e2b34346c}\label{group__Elm__Inwin_gadb45fb65aa0b076116e02d0e2b34346c}} 
\index{Inwin@{Inwin}!elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get@{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get}}
\index{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get@{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get}!Inwin@{Inwin}}
\subsubsection{\texorpdfstring{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get()}{elm\_win\_inwin\_content\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}}$\ast$ elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Get the content of an inwin object. 

Return the content object for this widget.

The returned object is valid as long as the inwin is still alive and no other content is set on it. Deleting the object will notify the inwin about it and this one will be left empty.

If you need to remove an inwin\textquotesingle{}s content to be reused somewhere else, see \mbox{\hyperlink{group__Elm__Inwin_ga4df7cab00fe961526b4558e26f25faeb}{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset()}}.


\begin{DoxyParams}{Parameters}
{\em obj} & The inwin object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The content that is being used 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Elm__Inwin_ga4df7cab00fe961526b4558e26f25faeb}\label{group__Elm__Inwin_ga4df7cab00fe961526b4558e26f25faeb}} 
\index{Inwin@{Inwin}!elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset@{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset}}
\index{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset@{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset}!Inwin@{Inwin}}
\subsubsection{\texorpdfstring{elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset()}{elm\_win\_inwin\_content\_unset()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}}$\ast$ elm\+\_\+win\+\_\+inwin\+\_\+content\+\_\+unset (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Unset the content of an inwin object. 

Unparent and return the content object which was set for this widget.


\begin{DoxyParams}{Parameters}
{\em obj} & The inwin object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The content that was being used 
\end{DoxyReturn}
