\hypertarget{group__Helper}{}\doxysection{Helper}
\label{group__Helper}\index{Helper@{Helper}}


The validation helper feature.  


\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Elm__Validate__Content}{\+\_\+\+Elm\+\_\+\+Validate\+\_\+\+Content}}
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Helper_ga5b981eee954e42ece68a348fefef364f}\label{group__Helper_ga5b981eee954e42ece68a348fefef364f}} 
typedef struct \mbox{\hyperlink{struct__Elm__Validate__Content}{\+\_\+\+Elm\+\_\+\+Validate\+\_\+\+Content}} {\bfseries Elm\+\_\+\+Validate\+\_\+\+Content}
\begin{DoxyCompactList}\small\item\em Data for the \mbox{\hyperlink{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}{elm\+\_\+validator\+\_\+regexp\+\_\+helper()}} \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}\label{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}} 
typedef struct \+\_\+\+Elm\+\_\+\+Validator\+\_\+\+Regexp {\bfseries Elm\+\_\+\+Validator\+\_\+\+Regexp}
\begin{DoxyCompactList}\small\item\em The Regexp validator data. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{group__Helper_ga1501d98c944f56aeb1d92ceb33e69ec9}{Elm\+\_\+\+Regexp\+\_\+\+Status}} \{ \newline
\mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9a1f0c67281d91a124c97893a923547020}{ELM\+\_\+\+REG\+\_\+\+NOERROR}} = 0
, \newline
\mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9af876807ccfce4baa6c1cf0db44d58106}{ELM\+\_\+\+REG\+\_\+\+NOMATCH}}
, \newline
\mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9aa4fcaac84cea0f21da3ca977222c50ce}{ELM\+\_\+\+REG\+\_\+\+BADPAT}}
 \}
\begin{DoxyCompactList}\small\item\em Enumeration that defines the regex error codes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\+\_\+\+Validator\+\_\+\+Regexp}} $\ast$ \mbox{\hyperlink{group__Helper_gaf59347c96390b5adf527b89617dbc24e}{elm\+\_\+validator\+\_\+regexp\+\_\+new}} (const char $\ast$pattern, const char $\ast$signal)
\begin{DoxyCompactList}\small\item\em Create a new regex validator. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Helper_ga0bee4dc637cde5514b4184b99a13bf69}{elm\+\_\+validator\+\_\+regexp\+\_\+free}} (\mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\+\_\+\+Validator\+\_\+\+Regexp}} $\ast$validator)
\begin{DoxyCompactList}\small\item\em Delete the existing regex validator. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Helper_ga1501d98c944f56aeb1d92ceb33e69ec9}{Elm\+\_\+\+Regexp\+\_\+\+Status}} \mbox{\hyperlink{group__Helper_gac59e0cdc44c823d589ac11d5d5f921fd}{elm\+\_\+validator\+\_\+regexp\+\_\+status\+\_\+get}} (\mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\+\_\+\+Validator\+\_\+\+Regexp}} $\ast$validator)
\begin{DoxyCompactList}\small\item\em Get the validation status. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}{elm\+\_\+validator\+\_\+regexp\+\_\+helper}} (void $\ast$data, const Efl\+\_\+\+Event $\ast$event)
\begin{DoxyCompactList}\small\item\em The regex validator. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
The validation helper feature. 



\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{group__Helper_ga1501d98c944f56aeb1d92ceb33e69ec9}\label{group__Helper_ga1501d98c944f56aeb1d92ceb33e69ec9}} 
\index{Helper@{Helper}!Elm\_Regexp\_Status@{Elm\_Regexp\_Status}}
\index{Elm\_Regexp\_Status@{Elm\_Regexp\_Status}!Helper@{Helper}}
\doxysubsubsection{\texorpdfstring{Elm\_Regexp\_Status}{Elm\_Regexp\_Status}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group__Helper_ga1501d98c944f56aeb1d92ceb33e69ec9}{Elm\+\_\+\+Regexp\+\_\+\+Status}}}



Enumeration that defines the regex error codes. 

\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}
\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{ELM\_REG\_NOERROR@{ELM\_REG\_NOERROR}!Helper@{Helper}}\index{Helper@{Helper}!ELM\_REG\_NOERROR@{ELM\_REG\_NOERROR}}}\mbox{\Hypertarget{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9a1f0c67281d91a124c97893a923547020}\label{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9a1f0c67281d91a124c97893a923547020}} 
ELM\+\_\+\+REG\+\_\+\+NOERROR&Regex maches to the Entrys text. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ELM\_REG\_NOMATCH@{ELM\_REG\_NOMATCH}!Helper@{Helper}}\index{Helper@{Helper}!ELM\_REG\_NOMATCH@{ELM\_REG\_NOMATCH}}}\mbox{\Hypertarget{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9af876807ccfce4baa6c1cf0db44d58106}\label{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9af876807ccfce4baa6c1cf0db44d58106}} 
ELM\+\_\+\+REG\+\_\+\+NOMATCH&Failed to match. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ELM\_REG\_BADPAT@{ELM\_REG\_BADPAT}!Helper@{Helper}}\index{Helper@{Helper}!ELM\_REG\_BADPAT@{ELM\_REG\_BADPAT}}}\mbox{\Hypertarget{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9aa4fcaac84cea0f21da3ca977222c50ce}\label{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9aa4fcaac84cea0f21da3ca977222c50ce}} 
ELM\+\_\+\+REG\+\_\+\+BADPAT&Invalid regular expression. \\
\hline

\end{DoxyEnumFields}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Helper_gaf59347c96390b5adf527b89617dbc24e}\label{group__Helper_gaf59347c96390b5adf527b89617dbc24e}} 
\index{Helper@{Helper}!elm\_validator\_regexp\_new@{elm\_validator\_regexp\_new}}
\index{elm\_validator\_regexp\_new@{elm\_validator\_regexp\_new}!Helper@{Helper}}
\doxysubsubsection{\texorpdfstring{elm\_validator\_regexp\_new()}{elm\_validator\_regexp\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\+\_\+\+Validator\+\_\+\+Regexp}} $\ast$ elm\+\_\+validator\+\_\+regexp\+\_\+new (\begin{DoxyParamCaption}\item[{const char $\ast$}]{pattern,  }\item[{const char $\ast$}]{signal }\end{DoxyParamCaption})}



Create a new regex validator. 

General designed for validate inputed entry text.


\begin{DoxyParams}{Parameters}
{\em pattern} & The regex pattern \\
\hline
{\em signal} & The part of signal name, which will be emitted to style \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The regex validator
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Helper_ga0bee4dc637cde5514b4184b99a13bf69}{elm\+\_\+validator\+\_\+regexp\+\_\+free()}} 

\mbox{\hyperlink{group__Helper_gac59e0cdc44c823d589ac11d5d5f921fd}{elm\+\_\+validator\+\_\+regexp\+\_\+status\+\_\+get()}} 

\mbox{\hyperlink{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}{elm\+\_\+validator\+\_\+regexp\+\_\+helper()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}, \mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9aa4fcaac84cea0f21da3ca977222c50ce}{ELM\+\_\+\+REG\+\_\+\+BADPAT}}, and \mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9a1f0c67281d91a124c97893a923547020}{ELM\+\_\+\+REG\+\_\+\+NOERROR}}.

\mbox{\Hypertarget{group__Helper_ga0bee4dc637cde5514b4184b99a13bf69}\label{group__Helper_ga0bee4dc637cde5514b4184b99a13bf69}} 
\index{Helper@{Helper}!elm\_validator\_regexp\_free@{elm\_validator\_regexp\_free}}
\index{elm\_validator\_regexp\_free@{elm\_validator\_regexp\_free}!Helper@{Helper}}
\doxysubsubsection{\texorpdfstring{elm\_validator\_regexp\_free()}{elm\_validator\_regexp\_free()}}
{\footnotesize\ttfamily void elm\+\_\+validator\+\_\+regexp\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\+\_\+\+Validator\+\_\+\+Regexp}} $\ast$}]{validator }\end{DoxyParamCaption})}



Delete the existing regex validator. 


\begin{DoxyParams}{Parameters}
{\em validator} & The given validator\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Helper_gaf59347c96390b5adf527b89617dbc24e}{elm\+\_\+validator\+\_\+regexp\+\_\+new()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References \mbox{\hyperlink{group__Eina__Stringshare__Group_ga5538b4a134987b8a01744fad1a845ba4}{eina\+\_\+stringshare\+\_\+del()}}.

\mbox{\Hypertarget{group__Helper_gac59e0cdc44c823d589ac11d5d5f921fd}\label{group__Helper_gac59e0cdc44c823d589ac11d5d5f921fd}} 
\index{Helper@{Helper}!elm\_validator\_regexp\_status\_get@{elm\_validator\_regexp\_status\_get}}
\index{elm\_validator\_regexp\_status\_get@{elm\_validator\_regexp\_status\_get}!Helper@{Helper}}
\doxysubsubsection{\texorpdfstring{elm\_validator\_regexp\_status\_get()}{elm\_validator\_regexp\_status\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Helper_ga1501d98c944f56aeb1d92ceb33e69ec9}{Elm\+\_\+\+Regexp\+\_\+\+Status}} elm\+\_\+validator\+\_\+regexp\+\_\+status\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\+\_\+\+Validator\+\_\+\+Regexp}} $\ast$}]{validator }\end{DoxyParamCaption})}



Get the validation status. 


\begin{DoxyParams}{Parameters}
{\em validator} & The given validator\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
All return value see here\+: \href{http://www.gnu.org/software/libc/manual/html_node/Regular-Expressions.html}{\texttt{ http\+://www.\+gnu.\+org/software/libc/manual/html\+\_\+node/\+Regular-\/\+Expressions.\+html}}
\end{DoxyNote}
\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}
\mbox{\Hypertarget{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}\label{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}} 
\index{Helper@{Helper}!elm\_validator\_regexp\_helper@{elm\_validator\_regexp\_helper}}
\index{elm\_validator\_regexp\_helper@{elm\_validator\_regexp\_helper}!Helper@{Helper}}
\doxysubsubsection{\texorpdfstring{elm\_validator\_regexp\_helper()}{elm\_validator\_regexp\_helper()}}
{\footnotesize\ttfamily void elm\+\_\+validator\+\_\+regexp\+\_\+helper (\begin{DoxyParamCaption}\item[{void $\ast$}]{data,  }\item[{const Efl\+\_\+\+Event $\ast$}]{event }\end{DoxyParamCaption})}



The regex validator. 

Used as callback to validate event.

Example\+: 
\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{keyword}{extern}\ \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\_Object}}\ *parent;}
\DoxyCodeLine{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\_Object}}\ *entry;}
\DoxyCodeLine{\mbox{\hyperlink{group__Helper_gaf3a5f802b9cc5378cc629609faa231d0}{Elm\_Validator\_Regexp}}\ *re;}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{comment}{//add\ validator}}
\DoxyCodeLine{entry\ =\ \mbox{\hyperlink{group__Elm__Entry__Group_gafb201886fc4ee715d229ad2fddfe2ee7}{elm\_entry\_add}}(parent);}
\DoxyCodeLine{re\ =\ \mbox{\hyperlink{group__Helper_gaf59347c96390b5adf527b89617dbc24e}{elm\_validator\_regexp\_new}}(\textcolor{stringliteral}{"{}\string^[0-\/9]*\$"{}},\ NULL);}
\DoxyCodeLine{efl\_event\_callback\_add(entry,\ \mbox{\hyperlink{group__Elm__Entry__Group_gaae9eaa03d7193a63ae44d88741e1a1a6}{ELM\_ENTRY\_EVENT\_VALIDATE}},\ \mbox{\hyperlink{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}{elm\_validator\_regexp\_helper}},\ re);}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{comment}{//delete\ validator}}
\DoxyCodeLine{efl\_event\_callback\_del(entry,\ \mbox{\hyperlink{group__Elm__Entry__Group_gaae9eaa03d7193a63ae44d88741e1a1a6}{ELM\_ENTRY\_EVENT\_VALIDATE}},\ \mbox{\hyperlink{group__Helper_ga53570a167037d2fb95e52ed17a323ea6}{elm\_validator\_regexp\_helper}},\ re);}

\end{DoxyCode}


\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Helper_gaf59347c96390b5adf527b89617dbc24e}{elm\+\_\+validator\+\_\+regexp\+\_\+new()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References \mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9a1f0c67281d91a124c97893a923547020}{ELM\+\_\+\+REG\+\_\+\+NOERROR}}, and \mbox{\hyperlink{group__Helper_gga1501d98c944f56aeb1d92ceb33e69ec9af876807ccfce4baa6c1cf0db44d58106}{ELM\+\_\+\+REG\+\_\+\+NOMATCH}}.

