\section{Gesture Layer}
\label{group__Elm__Gesture__Layer}\index{Gesture Layer@{Gesture Layer}}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
double \hyperlink{group__Elm__Gesture__Layer_gadf5deb261710e34b50a15697fa55d424}{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get} (void)
\begin{DoxyCompactList}\small\item\em Get the duration for occurring long tap event of gesture layer. \end{DoxyCompactList}\item 
void \hyperlink{group__Elm__Gesture__Layer_ga217791ed1a94e9182e0fe32185f235ee}{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set} (double long\+\_\+tap\+\_\+timeout)
\begin{DoxyCompactList}\small\item\em Set the duration for occurring long tap event of gesture layer. \end{DoxyCompactList}\item 
double \hyperlink{group__Elm__Gesture__Layer_gad9462095f7f081b7a06fcab6733466f7}{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get} (void)
\begin{DoxyCompactList}\small\item\em Get the duration for occurring double tap event of gesture layer. \end{DoxyCompactList}\item 
void \hyperlink{group__Elm__Gesture__Layer_ga35fc1e88b84bb5f9ff62cc8360f548c1}{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set} (double double\+\_\+tap\+\_\+timeout)
\begin{DoxyCompactList}\small\item\em Set the duration for occurring double tap event of gesture layer. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics{gesture_layer_inheritance_tree}}
\end{DoxyImageNoCaption}


Gesture Layer Usage\+:

Use Gesture Layer to detect gestures. The advantage is that you don't have to implement gesture detection, just set callbacks of gesture state. By using gesture layer we make standard interface.

In order to use Gesture Layer you start with elm\+\_\+gesture\+\_\+layer\+\_\+add with a parent object parameter. Next 'activate' gesture layer with a elm\+\_\+gesture\+\_\+layer\+\_\+attach call. Usually with same object as target (2nd parameter).

Now you need to tell gesture layer what gestures you follow. This is done with elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set call. By setting the callback you actually saying to gesture layer\+: I would like to know when the gesture Elm\+\_\+\+Gesture\+\_\+\+Type switches to state Elm\+\_\+\+Gesture\+\_\+\+State.

Next, you need to implement the actual action that follows the input in your callback.

Note that if you like to stop being reported about a gesture, just set all callbacks referring this gesture to N\+U\+L\+L. (again with elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set)

The information reported by gesture layer to your callback is depending on Elm\+\_\+\+Gesture\+\_\+\+Type \+: Elm\+\_\+\+Gesture\+\_\+\+Taps\+\_\+\+Info is the info reported for tap gestures\+: E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+N\+\_\+\+T\+A\+P\+S, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+N\+\_\+\+L\+O\+N\+G\+\_\+\+T\+A\+P\+S, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+N\+\_\+\+D\+O\+U\+B\+L\+E\+\_\+\+T\+A\+P\+S, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+N\+\_\+\+T\+R\+I\+P\+L\+E\+\_\+\+T\+A\+P\+S.

Elm\+\_\+\+Gesture\+\_\+\+Momentum\+\_\+\+Info is info reported for momentum gestures\+: E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+M\+O\+M\+E\+N\+T\+U\+M.

Elm\+\_\+\+Gesture\+\_\+\+Line\+\_\+\+Info is the info reported for line gestures\+: (this also contains Elm\+\_\+\+Gesture\+\_\+\+Momentum\+\_\+\+Info internal structure) E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+N\+\_\+\+L\+I\+N\+E\+S, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+N\+\_\+\+F\+L\+I\+C\+K\+S. Note that we consider a flick as a line-\/gesture that should be completed in flick-\/time-\/limit as defined in \hyperlink{group__Config}{Elementary Config}.

Elm\+\_\+\+Gesture\+\_\+\+Zoom\+\_\+\+Info is the info reported for E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+Z\+O\+O\+M gesture.

Elm\+\_\+\+Gesture\+\_\+\+Rotate\+\_\+\+Info is the info reported for E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+R\+O\+T\+A\+T\+E gesture.

Gesture Layer Tweaks\+:

Note that line, flick, gestures can start without the need to remove fingers from surface. When user fingers rests on same-\/spot gesture is ended and starts again when fingers moved.

Setting glayer\+\_\+continues\+\_\+enable to false in \hyperlink{group__Config}{Elementary Config} will change this behavior so gesture starts when user touches (a $\ast$\+D\+O\+W\+N event) touch-\/surface and ends when no fingers touches surface (a $\ast$\+U\+P event).

Supported elm\+\_\+object common A\+P\+Is. \begin{DoxyItemize}
\item \hyperlink{group__General_ga6849a57df3316eabad5bec443bf87597}{elm\+\_\+object\+\_\+disabled\+\_\+set} \item \hyperlink{group__General_ga3ecb0d6b4e76ff39006f218942c7950d}{elm\+\_\+object\+\_\+disabled\+\_\+get} \end{DoxyItemize}


\subsection{Function Documentation}
\index{Gesture Layer@{Gesture Layer}!elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get@{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get}}
\index{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get@{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get}!Gesture Layer@{Gesture Layer}}
\subsubsection[{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}double elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}\label{group__Elm__Gesture__Layer_gad9462095f7f081b7a06fcab6733466f7}


Get the duration for occurring double tap event of gesture layer. 

\begin{DoxyReturn}{Returns}
Timeout for double tap event of gesture layer.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\index{Gesture Layer@{Gesture Layer}!elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set@{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set}}
\index{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set@{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set}!Gesture Layer@{Gesture Layer}}
\subsubsection[{elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set (
\begin{DoxyParamCaption}
\item[{double}]{double\+\_\+tap\+\_\+timeout}
\end{DoxyParamCaption}
)}\label{group__Elm__Gesture__Layer_ga35fc1e88b84bb5f9ff62cc8360f548c1}


Set the duration for occurring double tap event of gesture layer. 


\begin{DoxyParams}{Parameters}
{\em long\+\_\+tap\+\_\+timeout} & Timeout for double tap event of gesture layer.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\index{Gesture Layer@{Gesture Layer}!elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get@{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get}}
\index{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get@{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get}!Gesture Layer@{Gesture Layer}}
\subsubsection[{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}double elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}\label{group__Elm__Gesture__Layer_gadf5deb261710e34b50a15697fa55d424}


Get the duration for occurring long tap event of gesture layer. 

\begin{DoxyReturn}{Returns}
Timeout for long tap event of gesture layer.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\index{Gesture Layer@{Gesture Layer}!elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set@{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set}}
\index{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set@{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set}!Gesture Layer@{Gesture Layer}}
\subsubsection[{elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set (
\begin{DoxyParamCaption}
\item[{double}]{long\+\_\+tap\+\_\+timeout}
\end{DoxyParamCaption}
)}\label{group__Elm__Gesture__Layer_ga217791ed1a94e9182e0fe32185f235ee}


Set the duration for occurring long tap event of gesture layer. 


\begin{DoxyParams}{Parameters}
{\em long\+\_\+tap\+\_\+timeout} & Timeout for long tap event of gesture layer.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
