\hypertarget{group__Elm__Gesture__Layer__Group}{}\doxysection{Gesture Layer}
\label{group__Elm__Gesture__Layer__Group}\index{Gesture Layer@{Gesture Layer}}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
double \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_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 \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_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 \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_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 \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_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}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga9ec619c91646b650b2f0b81338e613d0}{elm\+\_\+gesture\+\_\+layer\+\_\+zoom\+\_\+step\+\_\+set}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, double step)
\begin{DoxyCompactList}\small\item\em Control step value for zoom action. \end{DoxyCompactList}\item 
double \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga13b37eb2a21e480ca1fb9e19790199f7}{elm\+\_\+gesture\+\_\+layer\+\_\+zoom\+\_\+step\+\_\+get}} (const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj)
\begin{DoxyCompactList}\small\item\em Control step value for zoom action. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga1d06e8748015273c08b0c5d49bd52fd3}{elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+finger\+\_\+size\+\_\+set}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, int sz)
\begin{DoxyCompactList}\small\item\em This function sets the gesture layer finger-\/size for taps. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga339f189121e5e490d310bb3fd0984573}{elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+finger\+\_\+size\+\_\+get}} (const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj)
\begin{DoxyCompactList}\small\item\em This function returns the gesture layer finger-\/size for taps. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga069e0515e4bd9924a51c18e1fd82831f}{elm\+\_\+gesture\+\_\+layer\+\_\+hold\+\_\+events\+\_\+set}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} hold\+\_\+events)
\begin{DoxyCompactList}\small\item\em This function makes gesture-\/layer repeat events. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga3b9074d04643298c799b285a786e9abd}{elm\+\_\+gesture\+\_\+layer\+\_\+hold\+\_\+events\+\_\+get}} (const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get the repeat-\/events setting. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga263fab04b68a629541a423c13f4b4245}{elm\+\_\+gesture\+\_\+layer\+\_\+rotate\+\_\+step\+\_\+set}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, double step)
\begin{DoxyCompactList}\small\item\em This function returns step-\/value for rotate action. \end{DoxyCompactList}\item 
double \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_gae86987c927ac58025153617d0497e428}{elm\+\_\+gesture\+\_\+layer\+\_\+rotate\+\_\+step\+\_\+get}} (const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj)
\begin{DoxyCompactList}\small\item\em This function returns step-\/value for rotate action. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga2c8a52512ebe836e561b5cb6d2c94c5f}{elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, Elm\+\_\+\+Gesture\+\_\+\+Type idx, Elm\+\_\+\+Gesture\+\_\+\+State cb\+\_\+type, \mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}} cb, void $\ast$data)
\begin{DoxyCompactList}\small\item\em Set the gesture state change callback. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga7ee51d46e79b9c984d762477b6b6b24b}{elm\+\_\+gesture\+\_\+layer\+\_\+attach}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$target)
\begin{DoxyCompactList}\small\item\em Attach a gesture layer widget to an Evas object (setting the widget\textquotesingle{}s target). \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga10f80af8c97c6b1ed501611ee4b73d18}{elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+del}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, Elm\+\_\+\+Gesture\+\_\+\+Type idx, Elm\+\_\+\+Gesture\+\_\+\+State cb\+\_\+type, \mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}} cb, void $\ast$data)
\begin{DoxyCompactList}\small\item\em Remove a gesture callback. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga858e3eb73d8344811fe0bf8428824167}{elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+add}} (Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$obj, Elm\+\_\+\+Gesture\+\_\+\+Type idx, Elm\+\_\+\+Gesture\+\_\+\+State cb\+\_\+type, \mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}} cb, void $\ast$data)
\begin{DoxyCompactList}\small\item\em Add a gesture state change callback. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga55003a5d2031d0c2c0a834dceff6b0d1}{elm\+\_\+gesture\+\_\+layer\+\_\+add}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$parent)
\begin{DoxyCompactList}\small\item\em Call this function to construct a new gesture-\/layer object. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_gad0c59dbad956d63ff015bac89f9b7b0c}{elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+add}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, Elm\+\_\+\+Gesture\+\_\+\+State state, \mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}} cb, void $\ast$data)
\begin{DoxyCompactList}\small\item\em This function adds a callback called during Tap + Long Tap sequence. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga47a324aecd2745f2e1ab520f46d18ab5}{elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+del}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, Elm\+\_\+\+Gesture\+\_\+\+State state, \mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}} cb, void $\ast$data)
\begin{DoxyCompactList}\small\item\em This function removes a callback called during Tap + Long Tap sequence. \end{DoxyCompactList}\end{DoxyCompactItemize}


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


Gesture Layer Usage\+:

Use Gesture Layer to detect gestures. The advantage is that you don\textquotesingle{}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 \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga55003a5d2031d0c2c0a834dceff6b0d1}{elm\+\_\+gesture\+\_\+layer\+\_\+add}} with a parent object parameter. Next \textquotesingle{}activate\textquotesingle{} gesture layer with a \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga7ee51d46e79b9c984d762477b6b6b24b}{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 \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga2c8a52512ebe836e561b5cb6d2c94c5f}{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 NULL. (again with \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga2c8a52512ebe836e561b5cb6d2c94c5f}{elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set}})

The information reported by gesture layer to your callback is depending on Elm\+\_\+\+Gesture\+\_\+\+Type \+: \mbox{\hyperlink{group__Elm__Gesture__Layer_gababc7db9b53664b21d60e5042697937b}{Elm\+\_\+\+Gesture\+\_\+\+Taps\+\_\+\+Info}} is the info reported for tap gestures\+: ELM\+\_\+\+GESTURE\+\_\+\+N\+\_\+\+TAPS, ELM\+\_\+\+GESTURE\+\_\+\+N\+\_\+\+LONG\+\_\+\+TAPS, ELM\+\_\+\+GESTURE\+\_\+\+N\+\_\+\+DOUBLE\+\_\+\+TAPS, ELM\+\_\+\+GESTURE\+\_\+\+N\+\_\+\+TRIPLE\+\_\+\+TAPS.

\mbox{\hyperlink{group__Elm__Gesture__Layer_ga3fb243917a65c8dbd152e6e9deb99ea0}{Elm\+\_\+\+Gesture\+\_\+\+Momentum\+\_\+\+Info}} is info reported for momentum gestures\+: ELM\+\_\+\+GESTURE\+\_\+\+MOMENTUM.

\mbox{\hyperlink{group__Elm__Gesture__Layer_ga80de6e04cf55f6208e88ddca8f3f6f8d}{Elm\+\_\+\+Gesture\+\_\+\+Line\+\_\+\+Info}} is the info reported for line gestures\+: (this also contains \mbox{\hyperlink{group__Elm__Gesture__Layer_ga3fb243917a65c8dbd152e6e9deb99ea0}{Elm\+\_\+\+Gesture\+\_\+\+Momentum\+\_\+\+Info}} internal structure) ELM\+\_\+\+GESTURE\+\_\+\+N\+\_\+\+LINES, ELM\+\_\+\+GESTURE\+\_\+\+N\+\_\+\+FLICKS. Note that we consider a flick as a line-\/gesture that should be completed in flick-\/time-\/limit as defined in Config.

\mbox{\hyperlink{group__Elm__Gesture__Layer_ga9a7925d61747deb59e20e80918b363c8}{Elm\+\_\+\+Gesture\+\_\+\+Zoom\+\_\+\+Info}} is the info reported for ELM\+\_\+\+GESTURE\+\_\+\+ZOOM gesture.

\mbox{\hyperlink{group__Elm__Gesture__Layer_ga1459dd131b4a15e1981a4123cf0f0330}{Elm\+\_\+\+Gesture\+\_\+\+Rotate\+\_\+\+Info}} is the info reported for ELM\+\_\+\+GESTURE\+\_\+\+ROTATE 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 Config will change this behavior so gesture starts when user touches (a $\ast$\+DOWN event) touch-\/surface and ends when no fingers touches surface (a $\ast$\+UP event).

Supported elm\+\_\+object common APIs. \begin{DoxyItemize}
\item \mbox{\hyperlink{group__Elm__General_ga6849a57df3316eabad5bec443bf87597}{elm\+\_\+object\+\_\+disabled\+\_\+set}} \item \mbox{\hyperlink{group__Elm__General_ga3ecb0d6b4e76ff39006f218942c7950d}{elm\+\_\+object\+\_\+disabled\+\_\+get}} \end{DoxyItemize}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_gadf5deb261710e34b50a15697fa55d424}\label{group__Elm__Gesture__Layer__Group_gadf5deb261710e34b50a15697fa55d424}} 
\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}}
\doxysubsubsection{\texorpdfstring{elm\_config\_glayer\_long\_tap\_start\_timeout\_get()}{elm\_config\_glayer\_long\_tap\_start\_timeout\_get()}}
{\footnotesize\ttfamily double elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+get (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



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}
\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga217791ed1a94e9182e0fe32185f235ee}\label{group__Elm__Gesture__Layer__Group_ga217791ed1a94e9182e0fe32185f235ee}} 
\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}}
\doxysubsubsection{\texorpdfstring{elm\_config\_glayer\_long\_tap\_start\_timeout\_set()}{elm\_config\_glayer\_long\_tap\_start\_timeout\_set()}}
{\footnotesize\ttfamily void elm\+\_\+config\+\_\+glayer\+\_\+long\+\_\+tap\+\_\+start\+\_\+timeout\+\_\+set (\begin{DoxyParamCaption}\item[{double}]{long\+\_\+tap\+\_\+timeout }\end{DoxyParamCaption})}



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}


References \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_gad9462095f7f081b7a06fcab6733466f7}\label{group__Elm__Gesture__Layer__Group_gad9462095f7f081b7a06fcab6733466f7}} 
\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}}
\doxysubsubsection{\texorpdfstring{elm\_config\_glayer\_double\_tap\_timeout\_get()}{elm\_config\_glayer\_double\_tap\_timeout\_get()}}
{\footnotesize\ttfamily double elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+get (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



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}
\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga35fc1e88b84bb5f9ff62cc8360f548c1}\label{group__Elm__Gesture__Layer__Group_ga35fc1e88b84bb5f9ff62cc8360f548c1}} 
\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}}
\doxysubsubsection{\texorpdfstring{elm\_config\_glayer\_double\_tap\_timeout\_set()}{elm\_config\_glayer\_double\_tap\_timeout\_set()}}
{\footnotesize\ttfamily void elm\+\_\+config\+\_\+glayer\+\_\+double\+\_\+tap\+\_\+timeout\+\_\+set (\begin{DoxyParamCaption}\item[{double}]{double\+\_\+tap\+\_\+timeout }\end{DoxyParamCaption})}



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


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


References \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga9ec619c91646b650b2f0b81338e613d0}\label{group__Elm__Gesture__Layer__Group_ga9ec619c91646b650b2f0b81338e613d0}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_zoom\_step\_set@{elm\_gesture\_layer\_zoom\_step\_set}}
\index{elm\_gesture\_layer\_zoom\_step\_set@{elm\_gesture\_layer\_zoom\_step\_set}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_zoom\_step\_set()}{elm\_gesture\_layer\_zoom\_step\_set()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+zoom\+\_\+step\+\_\+set (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{double}]{step }\end{DoxyParamCaption})}



Control step value for zoom action. 

When recognizing the zoom gesture, it should be recognized as zooming larger than step.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em step} & The zoom step value. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_ga3657522211525a03d8fa4e1137ce566d}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+zoom\+\_\+step\+\_\+set()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga13b37eb2a21e480ca1fb9e19790199f7}\label{group__Elm__Gesture__Layer__Group_ga13b37eb2a21e480ca1fb9e19790199f7}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_zoom\_step\_get@{elm\_gesture\_layer\_zoom\_step\_get}}
\index{elm\_gesture\_layer\_zoom\_step\_get@{elm\_gesture\_layer\_zoom\_step\_get}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_zoom\_step\_get()}{elm\_gesture\_layer\_zoom\_step\_get()}}
{\footnotesize\ttfamily double elm\+\_\+gesture\+\_\+layer\+\_\+zoom\+\_\+step\+\_\+get (\begin{DoxyParamCaption}\item[{const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj }\end{DoxyParamCaption})}



Control step value for zoom action. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The zoom step value. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_ga46273cea66c15a112b0d14b95b3cec9c}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+zoom\+\_\+step\+\_\+get()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga1d06e8748015273c08b0c5d49bd52fd3}\label{group__Elm__Gesture__Layer__Group_ga1d06e8748015273c08b0c5d49bd52fd3}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_tap\_finger\_size\_set@{elm\_gesture\_layer\_tap\_finger\_size\_set}}
\index{elm\_gesture\_layer\_tap\_finger\_size\_set@{elm\_gesture\_layer\_tap\_finger\_size\_set}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_tap\_finger\_size\_set()}{elm\_gesture\_layer\_tap\_finger\_size\_set()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+finger\+\_\+size\+\_\+set (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{int}]{sz }\end{DoxyParamCaption})}



This function sets the gesture layer finger-\/size for taps. 

If not set, it\textquotesingle{}s taken from elm\+\_\+config. Set to 0 if you want GLayer to use the system finger size value (default).


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em sz} & The finger size.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+8
\end{DoxySince}
This function sets the gesture layer finger-\/size for taps.

Set to ZERO if you want GLayer to use system finger size value (default)


\begin{DoxyParams}{Parameters}
{\em obj} & gesture-\/layer. \\
\hline
{\em sz} & Finger size\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga339f189121e5e490d310bb3fd0984573}\label{group__Elm__Gesture__Layer__Group_ga339f189121e5e490d310bb3fd0984573}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_tap\_finger\_size\_get@{elm\_gesture\_layer\_tap\_finger\_size\_get}}
\index{elm\_gesture\_layer\_tap\_finger\_size\_get@{elm\_gesture\_layer\_tap\_finger\_size\_get}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_tap\_finger\_size\_get()}{elm\_gesture\_layer\_tap\_finger\_size\_get()}}
{\footnotesize\ttfamily int elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+finger\+\_\+size\+\_\+get (\begin{DoxyParamCaption}\item[{const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj }\end{DoxyParamCaption})}



This function returns the gesture layer finger-\/size for taps. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The finger size.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8
\end{DoxySince}

\begin{DoxyParams}{Parameters}
{\em obj} & gesture-\/layer. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Finger size that is currently used by Gesture Layer for taps.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga069e0515e4bd9924a51c18e1fd82831f}\label{group__Elm__Gesture__Layer__Group_ga069e0515e4bd9924a51c18e1fd82831f}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_hold\_events\_set@{elm\_gesture\_layer\_hold\_events\_set}}
\index{elm\_gesture\_layer\_hold\_events\_set@{elm\_gesture\_layer\_hold\_events\_set}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_hold\_events\_set()}{elm\_gesture\_layer\_hold\_events\_set()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+hold\+\_\+events\+\_\+set (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}}]{hold\+\_\+events }\end{DoxyParamCaption})}



This function makes gesture-\/layer repeat events. 

Set this if you like to get the raw events only if gestures were not detected.

Clear this if you like gesture layer to forward events as testing gestures.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em hold\+\_\+events} & If {\ttfamily true} get events only if gesture was not detected, {\ttfamily false} otherwise \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_ga450dc0c6b1c3e0ba77734eb0aab807d3}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+hold\+\_\+events\+\_\+set()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga3b9074d04643298c799b285a786e9abd}\label{group__Elm__Gesture__Layer__Group_ga3b9074d04643298c799b285a786e9abd}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_hold\_events\_get@{elm\_gesture\_layer\_hold\_events\_get}}
\index{elm\_gesture\_layer\_hold\_events\_get@{elm\_gesture\_layer\_hold\_events\_get}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_hold\_events\_get()}{elm\_gesture\_layer\_hold\_events\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} elm\+\_\+gesture\+\_\+layer\+\_\+hold\+\_\+events\+\_\+get (\begin{DoxyParamCaption}\item[{const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj }\end{DoxyParamCaption})}



Get the repeat-\/events setting. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
If {\ttfamily true} get events only if gesture was not detected, {\ttfamily false} otherwise 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_gad177f9ec350255e32938f840a741aee3}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+hold\+\_\+events\+\_\+get()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga263fab04b68a629541a423c13f4b4245}\label{group__Elm__Gesture__Layer__Group_ga263fab04b68a629541a423c13f4b4245}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_rotate\_step\_set@{elm\_gesture\_layer\_rotate\_step\_set}}
\index{elm\_gesture\_layer\_rotate\_step\_set@{elm\_gesture\_layer\_rotate\_step\_set}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_rotate\_step\_set()}{elm\_gesture\_layer\_rotate\_step\_set()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+rotate\+\_\+step\+\_\+set (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{double}]{step }\end{DoxyParamCaption})}



This function returns step-\/value for rotate action. 

Set to 0 to cancel step setting.

When recognizing the rotate gesture, the rotated size must be larger than step.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em step} & New rotate step value. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_ga20d996f0f1d62b644bad095d9c193a5b}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+rotate\+\_\+step\+\_\+set()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_gae86987c927ac58025153617d0497e428}\label{group__Elm__Gesture__Layer__Group_gae86987c927ac58025153617d0497e428}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_rotate\_step\_get@{elm\_gesture\_layer\_rotate\_step\_get}}
\index{elm\_gesture\_layer\_rotate\_step\_get@{elm\_gesture\_layer\_rotate\_step\_get}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_rotate\_step\_get()}{elm\_gesture\_layer\_rotate\_step\_get()}}
{\footnotesize\ttfamily double elm\+\_\+gesture\+\_\+layer\+\_\+rotate\+\_\+step\+\_\+get (\begin{DoxyParamCaption}\item[{const Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj }\end{DoxyParamCaption})}



This function returns step-\/value for rotate action. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
New rotate step value. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_gaff7eb750dee8c9098064d06a1b831d92}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+rotate\+\_\+step\+\_\+get()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga2c8a52512ebe836e561b5cb6d2c94c5f}\label{group__Elm__Gesture__Layer__Group_ga2c8a52512ebe836e561b5cb6d2c94c5f}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_cb\_set@{elm\_gesture\_layer\_cb\_set}}
\index{elm\_gesture\_layer\_cb\_set@{elm\_gesture\_layer\_cb\_set}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_cb\_set()}{elm\_gesture\_layer\_cb\_set()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+Type}]{idx,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+State}]{cb\+\_\+type,  }\item[{\mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}}}]{cb,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Set the gesture state change callback. 

When all callbacks for the gesture are set to {\ttfamily null}, it means this gesture is disabled.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em idx} & The gesture you want to track state of. \\
\hline
\mbox{\texttt{ in}}  & {\em cb\+\_\+type} & The event the callback tracks (START, MOVE, END, ABORT). \\
\hline
\mbox{\texttt{ in}}  & {\em cb} & The callback itself. \\
\hline
\mbox{\texttt{ in}}  & {\em data} & Custom data to be passed. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_gac7987862a1c675190f4bb8c3caf350c9}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga7ee51d46e79b9c984d762477b6b6b24b}\label{group__Elm__Gesture__Layer__Group_ga7ee51d46e79b9c984d762477b6b6b24b}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_attach@{elm\_gesture\_layer\_attach}}
\index{elm\_gesture\_layer\_attach@{elm\_gesture\_layer\_attach}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_attach()}{elm\_gesture\_layer\_attach()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} elm\+\_\+gesture\+\_\+layer\+\_\+attach (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$}]{target }\end{DoxyParamCaption})}



Attach a gesture layer widget to an Evas object (setting the widget\textquotesingle{}s target). 

A gesture layer\textquotesingle{}s target may be any Evas object. This object will be used to listen to mouse and key events.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em target} & The object to attach.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} on success, {\ttfamily false} otherwise. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_gaef73dc4f89ca0c1f8b1ad8d749ddfe15}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+attach()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga10f80af8c97c6b1ed501611ee4b73d18}\label{group__Elm__Gesture__Layer__Group_ga10f80af8c97c6b1ed501611ee4b73d18}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_cb\_del@{elm\_gesture\_layer\_cb\_del}}
\index{elm\_gesture\_layer\_cb\_del@{elm\_gesture\_layer\_cb\_del}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_cb\_del()}{elm\_gesture\_layer\_cb\_del()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+del (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+Type}]{idx,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+State}]{cb\+\_\+type,  }\item[{\mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}}}]{cb,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Remove a gesture callback. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em idx} & The gesture you want to track state of. \\
\hline
\mbox{\texttt{ in}}  & {\em cb\+\_\+type} & The event the callback tracks (START, MOVE, END, ABORT). \\
\hline
\mbox{\texttt{ in}}  & {\em cb} & The callback itself. \\
\hline
\mbox{\texttt{ in}}  & {\em data} & Custom callback data. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_ga457daf24450b9058f491cfa9c3a32421}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+del()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga858e3eb73d8344811fe0bf8428824167}\label{group__Elm__Gesture__Layer__Group_ga858e3eb73d8344811fe0bf8428824167}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_cb\_add@{elm\_gesture\_layer\_cb\_add}}
\index{elm\_gesture\_layer\_cb\_add@{elm\_gesture\_layer\_cb\_add}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_cb\_add()}{elm\_gesture\_layer\_cb\_add()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+add (\begin{DoxyParamCaption}\item[{Elm\+\_\+\+Gesture\+\_\+\+Layer $\ast$}]{obj,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+Type}]{idx,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+State}]{cb\+\_\+type,  }\item[{\mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}}}]{cb,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Add a gesture state change callback. 

When all callbacks for the gesture are set to {\ttfamily null}, it means this gesture is disabled.

If a function was already set for this gesture/type/state, it will be replaced by the new one. For ABI compat, callbacks added by \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga858e3eb73d8344811fe0bf8428824167}{elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+add}} will be removed. It is recommended to use only one of these functions for a gesture object.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em idx} & The gesture you want to track state of. \\
\hline
\mbox{\texttt{ in}}  & {\em cb\+\_\+type} & The event the callback tracks (START, MOVE, END, ABORT). \\
\hline
\mbox{\texttt{ in}}  & {\em cb} & The callback itself. \\
\hline
\mbox{\texttt{ in}}  & {\em data} & Custom data to be passed. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Elm__Gesture__Layer_ga6e7aa604a0ab3a67fdee57463b7dcd6e}{elm\+\_\+obj\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+add()}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga55003a5d2031d0c2c0a834dceff6b0d1}\label{group__Elm__Gesture__Layer__Group_ga55003a5d2031d0c2c0a834dceff6b0d1}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_add@{elm\_gesture\_layer\_add}}
\index{elm\_gesture\_layer\_add@{elm\_gesture\_layer\_add}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_add()}{elm\_gesture\_layer\_add()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ elm\+\_\+gesture\+\_\+layer\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{parent }\end{DoxyParamCaption})}



Call this function to construct a new gesture-\/layer object. 


\begin{DoxyParams}{Parameters}
{\em parent} & The gesture layer\textquotesingle{}s parent widget.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A new gesture layer object.
\end{DoxyReturn}
This does not activate the gesture layer. You have to call \mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga7ee51d46e79b9c984d762477b6b6b24b}{elm\+\_\+gesture\+\_\+layer\+\_\+attach()}} in order to \textquotesingle{}activate\textquotesingle{} gesture-\/layer. 

References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}.

\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_gad0c59dbad956d63ff015bac89f9b7b0c}\label{group__Elm__Gesture__Layer__Group_gad0c59dbad956d63ff015bac89f9b7b0c}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_tap\_longpress\_cb\_add@{elm\_gesture\_layer\_tap\_longpress\_cb\_add}}
\index{elm\_gesture\_layer\_tap\_longpress\_cb\_add@{elm\_gesture\_layer\_tap\_longpress\_cb\_add}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_tap\_longpress\_cb\_add()}{elm\_gesture\_layer\_tap\_longpress\_cb\_add()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+State}]{state,  }\item[{\mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}}}]{cb,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



This function adds a callback called during Tap + Long Tap sequence. 


\begin{DoxyParams}{Parameters}
{\em state} & state for the callback to add. \\
\hline
{\em cb} & callback pointer \\
\hline
{\em data} & user data for the callback.\\
\hline
\end{DoxyParams}
The callbacks will be called as followed\+:
\begin{DoxyItemize}
\item start cbs on single tap start
\item move cbs on long press move
\item end cbs on long press end
\item abort cbs whenever in the sequence. The event info will be NULL, because it can be triggered from multiple events (timer expired, abort single/long taps).
\end{DoxyItemize}

You can remove the callbacks by using elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+del.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Elm__Gesture__Layer__Group_ga47a324aecd2745f2e1ab520f46d18ab5}{elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+del}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{group__Elm__Gesture__Layer__Group_ga47a324aecd2745f2e1ab520f46d18ab5}\label{group__Elm__Gesture__Layer__Group_ga47a324aecd2745f2e1ab520f46d18ab5}} 
\index{Gesture Layer@{Gesture Layer}!elm\_gesture\_layer\_tap\_longpress\_cb\_del@{elm\_gesture\_layer\_tap\_longpress\_cb\_del}}
\index{elm\_gesture\_layer\_tap\_longpress\_cb\_del@{elm\_gesture\_layer\_tap\_longpress\_cb\_del}!Gesture Layer@{Gesture Layer}}
\doxysubsubsection{\texorpdfstring{elm\_gesture\_layer\_tap\_longpress\_cb\_del()}{elm\_gesture\_layer\_tap\_longpress\_cb\_del()}}
{\footnotesize\ttfamily void elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+del (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{Elm\+\_\+\+Gesture\+\_\+\+State}]{state,  }\item[{\mbox{\hyperlink{group__Elm__Gesture__Layer_ga07a0f79aa3f3c29582513eda404e4165}{Elm\+\_\+\+Gesture\+\_\+\+Event\+\_\+\+Cb}}}]{cb,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



This function removes a callback called during Tap + Long Tap sequence. 


\begin{DoxyParams}{Parameters}
{\em state} & state for the callback to add. \\
\hline
{\em cb} & callback pointer \\
\hline
{\em data} & user data for the callback.\\
\hline
\end{DoxyParams}
The internal data used for the sequence will be freed ONLY when all the callbacks added via elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+add are removed by this function.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Elm__Gesture__Layer__Group_gad0c59dbad956d63ff015bac89f9b7b0c}{elm\+\_\+gesture\+\_\+layer\+\_\+tap\+\_\+longpress\+\_\+cb\+\_\+add}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
