\hypertarget{group__Evas__Object__Group__Basic}{}\doxysection{Basic Object Manipulation}
\label{group__Evas__Object__Group__Basic}\index{Basic Object Manipulation@{Basic Object Manipulation}}


Almost every evas object created will have some generic function used to manipulate it.  


\begin{DoxyCompactItemize}
\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Increments object reference count to defer its deletion. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Decrements object reference count. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API int \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga29f31f1edfea74efc87e2eab198d05cb}{evas\+\_\+object\+\_\+ref\+\_\+get}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get the object reference count. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Marks the given Evas object for deletion (when Evas will free its memory). \end{DoxyCompactList}\item 
EVAS\+\_\+\+API const char $\ast$ \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga0840cc65a2924431a9be87c6a94ea15e}{evas\+\_\+object\+\_\+type\+\_\+get}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Retrieves the type of the given Evas object. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga48f9cbae79a45e5f672dbe2076a0cf36}{evas\+\_\+object\+\_\+name\+\_\+set}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, const char $\ast$name)
\begin{DoxyCompactList}\small\item\em Sets the name of the given Evas object to the given name. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API const char $\ast$ \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga30207eec263c05c17d453f8b8cc7a259}{evas\+\_\+object\+\_\+name\+\_\+get}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Retrieves the name of the given Evas object. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Group__Basic_gaf88c8b1fea308d145ca21fa985b9a6c3}{evas\+\_\+object\+\_\+name\+\_\+child\+\_\+find}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, const char $\ast$name, int recurse)
\begin{DoxyCompactList}\small\item\em Retrieves the object from children of the given object with the given name. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga6e8e78e110392480dd612df86a16b630}{evas\+\_\+object\+\_\+geometry\+\_\+get}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$x, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$y, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$w, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$h)
\begin{DoxyCompactList}\small\item\em Retrieves the position and (rectangular) size of the given Evas object. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae28d149c1c5cae97d7d1e1a12e0f51fe}{evas\+\_\+object\+\_\+geometry\+\_\+set}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} x, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} y, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} w, \mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} h)
\begin{DoxyCompactList}\small\item\em Set the position and (rectangular) size of the given Evas object. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga07208fcafd4739de606bc35fff684bf5}{evas\+\_\+object\+\_\+show}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Makes the given Evas object visible. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae66f71e09a0dc71675f15ebff6765c64}{evas\+\_\+object\+\_\+hide}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Makes the given Evas object invisible. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_gab751e9d24c16e74af6f7c08ea5b930c2}{evas\+\_\+object\+\_\+color\+\_\+set}} (\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, int r, int g, int b, int a)
\begin{DoxyCompactList}\small\item\em Sets the general/main color of the given Evas object to the given one. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Group__Basic_gad204691b53639244ee1062d3f349f1d9}{evas\+\_\+object\+\_\+color\+\_\+get}} (const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, int $\ast$r, int $\ast$g, int $\ast$b, int $\ast$a)
\begin{DoxyCompactList}\small\item\em Retrieves the general/main color of the given Evas object. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Almost every evas object created will have some generic function used to manipulate it. 

That\textquotesingle{}s because there are a number of basic actions to be done to objects that are irrespective of the object\textquotesingle{}s type, things like\+: \begin{DoxyItemize}
\item Showing/\+Hiding \item Setting (and getting) geometry \item Bring up or down a layer \item Color management \item Handling focus \item Clipping \item Reference counting\end{DoxyItemize}
All of these issues are handled through the functions grouped here. Examples of these function can be seen in Example\+\_\+\+Evas\+\_\+\+Object\+\_\+\+Manipulation(which deals with the most common ones) and in \mbox{\hyperlink{Example_Evas_Stacking}{Evas object stacking functions (and some event handling)}} (which deals with stacking functions). 

\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}\label{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_ref@{evas\_object\_ref}}
\index{evas\_object\_ref@{evas\_object\_ref}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_ref()}{evas\_object\_ref()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+ref (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Increments object reference count to defer its deletion. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object to reference\\
\hline
\end{DoxyParams}
This increments the reference count of an object, which if greater than 0 will defer deletion by \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del()}} until all references are released back (counter back to 0). References cannot go below 0 and unreferencing past that will result in the reference count being limited to 0. References are limited to {\ttfamily 2$^\wedge$32 -\/ 1} for an object. Referencing it more than this will result in it being limited to this value.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref()}} 

\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del()}}
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}
This is a {\bfseries{very simple}} reference counting mechanism! For instance, Evas is not ready to check for pending references on a canvas deletion, or things like that. This is useful on scenarios where, inside a code block, callbacks exist which would possibly delete an object we are operating on afterwards. Then, one would \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref()}} it on the beginning of the block and \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref()}} it on the end. It would then be deleted at this point, if it should be.
\end{DoxyNote}
Example\+: 
\begin{DoxyCode}{0}
\DoxyCodeLine{\mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\_object\_ref}}(obj);}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{comment}{//\ action\ here...}}
\DoxyCodeLine{\mbox{\hyperlink{group__Evas__Smart__Object__Group_ga684daaa265375789a2e0f2fa15333512}{evas\_object\_smart\_callback\_call}}(obj,\ SIG\_SELECTED,\ NULL);}
\DoxyCodeLine{\textcolor{comment}{//\ more\ action\ here...}}
\DoxyCodeLine{\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\_object\_unref}}(obj);}

\end{DoxyCode}


\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}\label{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_unref@{evas\_object\_unref}}
\index{evas\_object\_unref@{evas\_object\_unref}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_unref()}{evas\_object\_unref()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+unref (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Decrements object reference count. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object to unreference\\
\hline
\end{DoxyParams}
This decrements the reference count of an object. If the object has had \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del()}} called on it while references were more than 0, it will be deleted at the time this function is called and puts the counter back to 0. See \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref()}} for more information.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref()}} (for an example) 

\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}


References \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga29f31f1edfea74efc87e2eab198d05cb}\label{group__Evas__Object__Group__Basic_ga29f31f1edfea74efc87e2eab198d05cb}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_ref\_get@{evas\_object\_ref\_get}}
\index{evas\_object\_ref\_get@{evas\_object\_ref\_get}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_ref\_get()}{evas\_object\_ref\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API int evas\+\_\+object\+\_\+ref\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Get the object reference count. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object to query\\
\hline
\end{DoxyParams}
This gets the reference count for an object (normally 0 until it is referenced). Values of 1 or greater mean that someone is holding a reference to this object that needs to be unreffed before it can be deleted.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref()}} 

\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref()}} 

\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}{evas\+\_\+object\+\_\+del()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}\label{group__Evas__Object__Group__Basic_ga9217cf1d90690dbd1960db155d1c7476}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_del@{evas\_object\_del}}
\index{evas\_object\_del@{evas\_object\_del}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_del()}{evas\_object\_del()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+del (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Marks the given Evas object for deletion (when Evas will free its memory). 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object.\\
\hline
\end{DoxyParams}
This call will mark {\ttfamily obj} for deletion, which will take place whenever it has no more references to it (see \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref()}} and \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref()}}).

At actual deletion time, which may or may not be just after this call, \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968a4471afbcbb4a754b7b0bbde00fb9a277}{EVAS\+\_\+\+CALLBACK\+\_\+\+DEL}} and \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968aab869b5d534f02f1b3e151e2406a8c24}{EVAS\+\_\+\+CALLBACK\+\_\+\+FREE}} callbacks will be called. If the object currently had the focus, its \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968ab26a0af7efaa8b77e996bd438accf8d3}{EVAS\+\_\+\+CALLBACK\+\_\+\+FOCUS\+\_\+\+OUT}} callback will also be called.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_gae090e9c2981124c076ab1f300dade76a}{evas\+\_\+object\+\_\+ref()}} 

\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref()}} 
\end{DoxySeeAlso}


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



Referenced by \mbox{\hyperlink{Edje__Edit_8h_ab77d41541a0a088a7e6ef421644efc78}{edje\+\_\+edit\+\_\+part\+\_\+source\+\_\+set()}}, \mbox{\hyperlink{group__Edje__Perspective_ga51e6fa1a3a019919834770e78a39865d}{edje\+\_\+perspective\+\_\+free()}}, \mbox{\hyperlink{group__Init_gababec97a4b958a679bc9b7d1ab2501eb}{elm\+\_\+code\+\_\+free()}}, \mbox{\hyperlink{group__Elm__Cursors_ga1c97e902d92b738ddb6dda541ede562f}{elm\+\_\+object\+\_\+cursor\+\_\+unset()}}, \mbox{\hyperlink{group__Elm__General_ga6d97396fff435e4870918d1058acd613}{elm\+\_\+quicklaunch\+\_\+seed()}}, \mbox{\hyperlink{group__Ethumb__Basics_ga5aa34b809d0cb87db73f509ad8c9003c}{ethumb\+\_\+free()}}, and \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga33adbb7a7497b537b5c17bcd8b8ba75d}{evas\+\_\+object\+\_\+unref()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga0840cc65a2924431a9be87c6a94ea15e}\label{group__Evas__Object__Group__Basic_ga0840cc65a2924431a9be87c6a94ea15e}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_type\_get@{evas\_object\_type\_get}}
\index{evas\_object\_type\_get@{evas\_object\_type\_get}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_type\_get()}{evas\_object\_type\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API const char $\ast$ evas\+\_\+object\+\_\+type\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Retrieves the type of the given Evas object. 

For Evas\textquotesingle{} builtin types, the return strings will be one of \char`\"{}rectangle\char`\"{}, \char`\"{}line\char`\"{}, \char`\"{}polygon\char`\"{}, \char`\"{}text\char`\"{}, \char`\"{}textblock\char`\"{} or \char`\"{}image\char`\"{}.

For Evas smart objects (see \mbox{\hyperlink{group__Evas__Smart__Group}{Smart Functions}}), the name of the smart class itself is returned on this call. For the built-\/in smart objects, these names are \char`\"{}\+Evas\+Object\+Smart\+Clipped\char`\"{} for the clipped smart object, \char`\"{}\+Evas\+\_\+\+Object\+\_\+\+Box\char`\"{} for the box object and "{}Evas\+\_\+\+Object\+\_\+\+Table for the table object.

\begin{DoxyReturn}{Returns}
The type of the object.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+18 
\end{DoxySince}
\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga48f9cbae79a45e5f672dbe2076a0cf36}\label{group__Evas__Object__Group__Basic_ga48f9cbae79a45e5f672dbe2076a0cf36}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_name\_set@{evas\_object\_name\_set}}
\index{evas\_object\_name\_set@{evas\_object\_name\_set}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_name\_set()}{evas\_object\_name\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+name\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{const char $\ast$}]{name }\end{DoxyParamCaption})}



Sets the name of the given Evas object to the given name. 

There might be occasions where one would like to name his/her objects.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em name} & The given name. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Eina__Hash__Group_gad84f97a2335a693aa8b9507b9a4a7c42}{eina\+\_\+hash\+\_\+list\+\_\+prepend()}}, and \mbox{\hyperlink{group__Eina__Hash__Group_ga5ff50760c480ab612433022352648a8f}{eina\+\_\+hash\+\_\+list\+\_\+remove()}}.



Referenced by \mbox{\hyperlink{group__Edje__Perspective_ga9e560272fb6b954a9e99eaad72a6755f}{edje\+\_\+perspective\+\_\+global\+\_\+set()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga30207eec263c05c17d453f8b8cc7a259}\label{group__Evas__Object__Group__Basic_ga30207eec263c05c17d453f8b8cc7a259}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_name\_get@{evas\_object\_name\_get}}
\index{evas\_object\_name\_get@{evas\_object\_name\_get}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_name\_get()}{evas\_object\_name\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API const char $\ast$ evas\+\_\+object\+\_\+name\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Retrieves the name of the given Evas object. 

Return\+: The name of the object or {\ttfamily null}, if no name has been given to it.

\begin{DoxyReturn}{Returns}
The given name. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Group__Basic_gaf88c8b1fea308d145ca21fa985b9a6c3}\label{group__Evas__Object__Group__Basic_gaf88c8b1fea308d145ca21fa985b9a6c3}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_name\_child\_find@{evas\_object\_name\_child\_find}}
\index{evas\_object\_name\_child\_find@{evas\_object\_name\_child\_find}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_name\_child\_find()}{evas\_object\_name\_child\_find()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ evas\+\_\+object\+\_\+name\+\_\+child\+\_\+find (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{const char $\ast$}]{name,  }\item[{int}]{recurse }\end{DoxyParamCaption})}



Retrieves the object from children of the given object with the given name. 

This looks for the evas object given a name by \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga48f9cbae79a45e5f672dbe2076a0cf36}{evas\+\_\+object\+\_\+name\+\_\+set}}, but it ONLY looks at the children of the object $\ast$p obj, and will only recurse into those children if {\ttfamily recurse} is greater than 0. If the name is not unique within immediate children (or the whole child tree) then it is not defined which child object will be returned. If {\ttfamily recurse} is set to -\/1 then it will recurse without limit.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em name} & The given name. \\
\hline
\mbox{\texttt{ in}}  & {\em recurse} & Set to the number of child levels to recurse (0 == don\textquotesingle{}t recurse, 1 == only look at the children of {\ttfamily obj} or their immediate children, but no further etc.).\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The Evas object with the given name on success, Otherwise {\ttfamily null}.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga6e8e78e110392480dd612df86a16b630}\label{group__Evas__Object__Group__Basic_ga6e8e78e110392480dd612df86a16b630}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_geometry\_get@{evas\_object\_geometry\_get}}
\index{evas\_object\_geometry\_get@{evas\_object\_geometry\_get}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_geometry\_get()}{evas\_object\_geometry\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+geometry\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$}]{x,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$}]{y,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$}]{w,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}} $\ast$}]{h }\end{DoxyParamCaption})}



Retrieves the position and (rectangular) size of the given Evas object. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object. \\
\hline
{\em x} & Pointer to an integer in which to store the X coordinate of the object. \\
\hline
{\em y} & Pointer to an integer in which to store the Y coordinate of the object. \\
\hline
{\em w} & Pointer to an integer in which to store the width of the object. \\
\hline
{\em h} & Pointer to an integer in which to store the height of the object.\\
\hline
\end{DoxyParams}
The position, naturally, will be relative to the top left corner of the canvas\textquotesingle{} viewport.

\begin{DoxyNote}{Note}
Use {\ttfamily NULL} pointers on the geometry components you\textquotesingle{}re not interested in\+: they\textquotesingle{}ll be ignored by the function.
\end{DoxyNote}
Example\+:  
\begin{DoxyCodeInclude}{0}
\DoxyCodeLine{\ \ \ \textcolor{keywordtype}{int}\ w,\ h,\ cw,\ ch;}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga6e8e78e110392480dd612df86a16b630}{evas\_object\_geometry\_get}}(d.img,\ NULL,\ NULL,\ \&w,\ \&h);}
\DoxyCodeLine{\ \ \ \mbox{\hyperlink{group__Ecore__Evas__Group_ga931aadf4603731e73e8a84e4b14f1493}{ecore\_evas\_geometry\_get}}(d.ee,\ NULL,\ NULL,\ \&cw,\ \&ch);}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \textcolor{keywordflow}{if}\ (w\ <\ cw)}
\DoxyCodeLine{\ \ \ \ \ \mbox{\hyperlink{group__Evas__Object__Group_gacad94595f83580c18908cb3b69b08d1a}{evas\_object\_resize}}(d.img,\ cw,\ ch);}
\DoxyCodeLine{\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\ \ \ \ \ \mbox{\hyperlink{group__Evas__Object__Group_gacad94595f83580c18908cb3b69b08d1a}{evas\_object\_resize}}(d.img,\ cw\ /\ 2,\ ch\ /\ 2);}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\_TRUE}};\ \textcolor{comment}{/*\ re-\/issue\ the\ timer\ */}}

\end{DoxyCodeInclude}
 See the full \mbox{\hyperlink{Example_Evas_Events}{example}}. 

Referenced by \mbox{\hyperlink{group__CopyPaste_gafbba28b98c9cedca35b0c6da403321aa}{elm\+\_\+drag\+\_\+start()}}, \mbox{\hyperlink{group__Emotion__Video_ga64cae006ba016ddff6fd036c27427ab1}{emotion\+\_\+object\+\_\+border\+\_\+set()}}, \mbox{\hyperlink{group__Emotion__Video_gac1d62b02596c010751a8bd2d91e3b536}{emotion\+\_\+object\+\_\+keep\+\_\+aspect\+\_\+set()}}, and \mbox{\hyperlink{group__Evas__Object__Textblock__Group_ga4f65a8e41ce3e4b4e59264ddde80b6fe}{evas\+\_\+textblock\+\_\+cursor\+\_\+range\+\_\+simple\+\_\+geometry\+\_\+get()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_gae28d149c1c5cae97d7d1e1a12e0f51fe}\label{group__Evas__Object__Group__Basic_gae28d149c1c5cae97d7d1e1a12e0f51fe}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_geometry\_set@{evas\_object\_geometry\_set}}
\index{evas\_object\_geometry\_set@{evas\_object\_geometry\_set}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_geometry\_set()}{evas\_object\_geometry\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+geometry\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}}}]{x,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}}}]{y,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}}}]{w,  }\item[{\mbox{\hyperlink{Evas__Common_8h_a2453e92182bad3b0e0d84e5aff433b07}{Evas\+\_\+\+Coord}}}]{h }\end{DoxyParamCaption})}



Set the position and (rectangular) size of the given Evas object. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object. \\
\hline
{\em x} & X position to move the object to, in canvas units. \\
\hline
{\em y} & Y position to move the object to, in canvas units. \\
\hline
{\em w} & The new width of the Evas object. \\
\hline
{\em h} & The new height of the Evas object.\\
\hline
\end{DoxyParams}
The position, naturally, will be relative to the top left corner of the canvas\textquotesingle{} viewport.

If the object get moved, the object\textquotesingle{}s \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968a9b66bd091da76fb13f551c6db04502b0}{EVAS\+\_\+\+CALLBACK\+\_\+\+MOVE}} callback will be called.

If the object get resized, the object\textquotesingle{}s \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968a554e3341a4ae95e15d42da495f8adb21}{EVAS\+\_\+\+CALLBACK\+\_\+\+RESIZE}} callback will be called.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group_ga335c8ee6eaeaac9710656af4f8b0db91}{evas\+\_\+object\+\_\+move()}} 

\mbox{\hyperlink{group__Evas__Object__Group_gacad94595f83580c18908cb3b69b08d1a}{evas\+\_\+object\+\_\+resize()}} 

\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga6e8e78e110392480dd612df86a16b630}{evas\+\_\+object\+\_\+geometry\+\_\+get}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}


References \mbox{\hyperlink{group__Eina__Rectangle__Group_gad57f0812a5c05eb7786524e4d5470dce}{EINA\+\_\+\+RECT}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_ga07208fcafd4739de606bc35fff684bf5}\label{group__Evas__Object__Group__Basic_ga07208fcafd4739de606bc35fff684bf5}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_show@{evas\_object\_show}}
\index{evas\_object\_show@{evas\_object\_show}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_show()}{evas\_object\_show()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+show (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Makes the given Evas object visible. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object.\\
\hline
\end{DoxyParams}
Besides becoming visible, the object\textquotesingle{}s \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968ab433c293bd272670ac3b5e8b1928a540}{EVAS\+\_\+\+CALLBACK\+\_\+\+SHOW}} callback will be called.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_gae66f71e09a0dc71675f15ebff6765c64}{evas\+\_\+object\+\_\+hide()}} for more on object visibility. 

\mbox{\hyperlink{group__Evas__Object__Group_ga725de602ecda14e4548b4e06c5faf481}{evas\+\_\+object\+\_\+visible\+\_\+get()}} 
\end{DoxySeeAlso}


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



Referenced by \mbox{\hyperlink{group__CopyPaste_gafbba28b98c9cedca35b0c6da403321aa}{elm\+\_\+drag\+\_\+start()}}, \mbox{\hyperlink{group__Elm__Image_ga34277f0638fdb99ac8d866149c6ec095}{elm\+\_\+image\+\_\+preload\+\_\+disabled\+\_\+set()}}, and \mbox{\hyperlink{group__Elm__General_ga6d97396fff435e4870918d1058acd613}{elm\+\_\+quicklaunch\+\_\+seed()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_gae66f71e09a0dc71675f15ebff6765c64}\label{group__Evas__Object__Group__Basic_gae66f71e09a0dc71675f15ebff6765c64}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_hide@{evas\_object\_hide}}
\index{evas\_object\_hide@{evas\_object\_hide}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_hide()}{evas\_object\_hide()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+hide (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj }\end{DoxyParamCaption})}



Makes the given Evas object invisible. 


\begin{DoxyParams}{Parameters}
{\em obj} & The given Evas object.\\
\hline
\end{DoxyParams}
Hidden objects, besides not being shown at all in your canvas, won\textquotesingle{}t be checked for changes on the canvas rendering process. Furthermore, they will not catch input events. Thus, they are much ligher (in processing needs) than an object that is invisible due to indirect causes, such as being clipped or out of the canvas\textquotesingle{} viewport.

Besides becoming hidden, {\ttfamily obj} object\textquotesingle{}s \mbox{\hyperlink{Evas__Common_8h_ad64cde0da38a60e7cb7905b3ab216968ab433c293bd272670ac3b5e8b1928a540}{EVAS\+\_\+\+CALLBACK\+\_\+\+SHOW}} callback will be called.

\begin{DoxyNote}{Note}
All objects are created in the hidden state! If you want them shown, use \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga07208fcafd4739de606bc35fff684bf5}{evas\+\_\+object\+\_\+show()}} after their creation.
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_ga07208fcafd4739de606bc35fff684bf5}{evas\+\_\+object\+\_\+show()}} 

\mbox{\hyperlink{group__Evas__Object__Group_ga725de602ecda14e4548b4e06c5faf481}{evas\+\_\+object\+\_\+visible\+\_\+get()}}
\end{DoxySeeAlso}
Example\+:  
\begin{DoxyCodeInclude}{0}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{group__Evas__Object__Group_ga725de602ecda14e4548b4e06c5faf481}{evas\_object\_visible\_get}}(d.clipper))}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{group__Evas__Object__Group__Basic_gae66f71e09a0dc71675f15ebff6765c64}{evas\_object\_hide}}(d.clipper);}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}hidden\(\backslash\)n"{}});}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{group__Evas__Object__Group__Basic_ga07208fcafd4739de606bc35fff684bf5}{evas\_object\_show}}(d.clipper);}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}visible\(\backslash\)n"{}});}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}

\end{DoxyCodeInclude}
 See the full \mbox{\hyperlink{Example_Evas_Object_Manipulation}{example}}. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}.



Referenced by \mbox{\hyperlink{group__Ecore__Evas__Group_ga4982fe88d888c0436a2f08f0def56ed8}{ecore\+\_\+evas\+\_\+cursor\+\_\+device\+\_\+unset()}}, \mbox{\hyperlink{Edje__Edit_8h_af657eb4966e58c550ad50c79c9154735}{edje\+\_\+edit\+\_\+part\+\_\+del()}}, and \mbox{\hyperlink{group__Init_gababec97a4b958a679bc9b7d1ab2501eb}{elm\+\_\+code\+\_\+free()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_gab751e9d24c16e74af6f7c08ea5b930c2}\label{group__Evas__Object__Group__Basic_gab751e9d24c16e74af6f7c08ea5b930c2}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_color\_set@{evas\_object\_color\_set}}
\index{evas\_object\_color\_set@{evas\_object\_color\_set}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_color\_set()}{evas\_object\_color\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+color\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{int}]{r,  }\item[{int}]{g,  }\item[{int}]{b,  }\item[{int}]{a }\end{DoxyParamCaption})}



Sets the general/main color of the given Evas object to the given one. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Basic_gad204691b53639244ee1062d3f349f1d9}{evas\+\_\+object\+\_\+color\+\_\+get()}} (for an example) 
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}
These color values are expected to be premultiplied by {\ttfamily a}.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em r} & The red component of the given color. \\
\hline
\mbox{\texttt{ in}}  & {\em g} & The green component of the given color. \\
\hline
\mbox{\texttt{ in}}  & {\em b} & The blue component of the given color. \\
\hline
\mbox{\texttt{ in}}  & {\em a} & The alpha component of the given color. \\
\hline
\end{DoxyParams}


Referenced by \mbox{\hyperlink{group__Emotion__Video_ga04ab67d610efd553d250054c35eeb9d1}{emotion\+\_\+object\+\_\+bg\+\_\+color\+\_\+set()}}.

\mbox{\Hypertarget{group__Evas__Object__Group__Basic_gad204691b53639244ee1062d3f349f1d9}\label{group__Evas__Object__Group__Basic_gad204691b53639244ee1062d3f349f1d9}} 
\index{Basic Object Manipulation@{Basic Object Manipulation}!evas\_object\_color\_get@{evas\_object\_color\_get}}
\index{evas\_object\_color\_get@{evas\_object\_color\_get}!Basic Object Manipulation@{Basic Object Manipulation}}
\doxysubsubsection{\texorpdfstring{evas\_object\_color\_get()}{evas\_object\_color\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+color\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$}]{obj,  }\item[{int $\ast$}]{r,  }\item[{int $\ast$}]{g,  }\item[{int $\ast$}]{b,  }\item[{int $\ast$}]{a }\end{DoxyParamCaption})}



Retrieves the general/main color of the given Evas object. 

Retrieves the “main” color\textquotesingle{}s RGB component (and alpha channel) values, {\bfseries{which range from 0 to 255}}. For the alpha channel, which defines the object\textquotesingle{}s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.

Usually you’ll use this attribute for text and rectangle objects, where the “main” color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.

\begin{DoxyNote}{Note}
All newly created Evas rectangles get the default color values of {\ttfamily 255 255 255 255} (opaque white).

Use {\ttfamily NULL} pointers on the components you\textquotesingle{}re not interested in\+: they\textquotesingle{}ll be ignored by the function.
\end{DoxyNote}
Example\+:  
\begin{DoxyCodeInclude}{0}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ alpha,\ r,\ g,\ b;}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \mbox{\hyperlink{group__Evas__Object__Group__Basic_gad204691b53639244ee1062d3f349f1d9}{evas\_object\_color\_get}}(d.clipper,\ \&r,\ \&g,\ \&b,\ \&alpha);}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \mbox{\hyperlink{group__Evas__Utils_ga67c6fcb9ce7f50f8ba44742e791768e3}{evas\_color\_argb\_unpremul}}(alpha,\ \&r,\ \&g,\ \&b);}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ alpha\ -\/=\ 20;}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (alpha\ <\ 0)}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ alpha\ =\ 255;}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \mbox{\hyperlink{group__Evas__Utils_gaf3b432607f6e8a987598a3489c7e386e}{evas\_color\_argb\_premul}}(alpha,\ \&r,\ \&g,\ \&b);}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \mbox{\hyperlink{group__Evas__Object__Group__Basic_gab751e9d24c16e74af6f7c08ea5b930c2}{evas\_object\_color\_set}}(d.clipper,\ r,\ g,\ b,\ alpha);}
\DoxyCodeLine{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Changing\ clipper's\ opacity:\ \%d\%\%\(\backslash\)n"{}},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (\textcolor{keywordtype}{int})((alpha\ /\ 255.0)\ *\ 100));}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}

\end{DoxyCodeInclude}
 See the full \mbox{\hyperlink{Example_Evas_Object_Manipulation}{example}}.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em r} & The red component of the given color. \\
\hline
\mbox{\texttt{ out}}  & {\em g} & The green component of the given color. \\
\hline
\mbox{\texttt{ out}}  & {\em b} & The blue component of the given color. \\
\hline
\mbox{\texttt{ out}}  & {\em a} & The alpha component of the given color. \\
\hline
\end{DoxyParams}


Referenced by \mbox{\hyperlink{group__Emotion__Video_ga52f4a70cb5544588a7d876fd964a64f6}{emotion\+\_\+object\+\_\+bg\+\_\+color\+\_\+get()}}.

