\hypertarget{group__Edje__Object__Color__Class}{}\section{Edje Class\+: Color}
\label{group__Edje__Object__Color__Class}\index{Edje Class\+: Color@{Edje Class\+: Color}}


Functions that deal with Color Classes.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Edje__Object__Color__Class_ga684435de625bdbb996e405e3eaaa54ad}{edje\+\_\+color\+\_\+class\+\_\+set} (const char $\ast$color\+\_\+class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)
\begin{DoxyCompactList}\small\item\em Set Edje color class. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Edje__Object__Color__Class_gaf4e14706bc9766011ca60862f057d56e}{edje\+\_\+color\+\_\+class\+\_\+get} (const char $\ast$color\+\_\+class, int $\ast$r, int $\ast$g, int $\ast$b, int $\ast$a, int $\ast$r2, int $\ast$g2, int $\ast$b2, int $\ast$a2, int $\ast$r3, int $\ast$g3, int $\ast$b3, int $\ast$a3)
\begin{DoxyCompactList}\small\item\em Get Edje color class. \end{DoxyCompactList}\item 
void \hyperlink{group__Edje__Object__Color__Class_ga0d30416497554e3f50c893de5c0cccad}{edje\+\_\+color\+\_\+class\+\_\+del} (const char $\ast$color\+\_\+class)
\begin{DoxyCompactList}\small\item\em Delete edje color class. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List} $\ast$ \hyperlink{group__Edje__Object__Color__Class_gac9de6885daf1eea7d3f6e3e822a4ca65}{edje\+\_\+color\+\_\+class\+\_\+list} (void)
\begin{DoxyCompactList}\small\item\em Lists color classes. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Iterator__Group_ga15b975bb881d955249ce13d4ebc96948}{Eina\+\_\+\+Iterator} $\ast$ \hyperlink{group__Edje__Object__Color__Class_ga697281c9726852df02a73dd715a70727}{edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new} (void)
\begin{DoxyCompactList}\small\item\em Iterate over all the active class of an application. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Iterator__Group_ga15b975bb881d955249ce13d4ebc96948}{Eina\+\_\+\+Iterator} $\ast$ \hyperlink{group__Edje__Object__Color__Class_gac6c3cbc88606a2f6f16e96280785df15}{edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new} (\hyperlink{group__Eina__File__Group_ga20697123547cbc937c6c9dd845af0403}{Eina\+\_\+\+File} $\ast$f)
\begin{DoxyCompactList}\small\item\em Iterate over all the color class provided by an Edje file. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Functions that deal with Color Classes. 

Sometimes we want to change the color of two or more parts equally and that\textquotesingle{}s when we use color classes.

If one or more parts are assigned with a color class, when we set color values to this class it will cause all these parts to have their colors multiplied by the values. Setting values to a color class at a process level will affect all parts with that color class, while at a object level will affect only the parts inside an specified object. 

\subsection{Function Documentation}
\index{Edje Class\+: Color@{Edje Class\+: Color}!edje\+\_\+color\+\_\+class\+\_\+set@{edje\+\_\+color\+\_\+class\+\_\+set}}
\index{edje\+\_\+color\+\_\+class\+\_\+set@{edje\+\_\+color\+\_\+class\+\_\+set}!Edje Class\+: Color@{Edje Class\+: Color}}
\subsubsection[{\texorpdfstring{edje\+\_\+color\+\_\+class\+\_\+set(const char $\ast$color\+\_\+class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)}{edje_color_class_set(const char *color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\+\_\+\+Bool} edje\+\_\+color\+\_\+class\+\_\+set (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{color\+\_\+class, }
\item[{int}]{r, }
\item[{int}]{g, }
\item[{int}]{b, }
\item[{int}]{a, }
\item[{int}]{r2, }
\item[{int}]{g2, }
\item[{int}]{b2, }
\item[{int}]{a2, }
\item[{int}]{r3, }
\item[{int}]{g3, }
\item[{int}]{b3, }
\item[{int}]{a3}
\end{DoxyParamCaption}
)}\hypertarget{group__Edje__Object__Color__Class_ga684435de625bdbb996e405e3eaaa54ad}{}\label{group__Edje__Object__Color__Class_ga684435de625bdbb996e405e3eaaa54ad}


Set Edje color class. 


\begin{DoxyParams}{Parameters}
{\em color\+\_\+class} & \\
\hline
{\em r} & Object Red value \\
\hline
{\em g} & Object Green value \\
\hline
{\em b} & Object Blue value \\
\hline
{\em a} & Object Alpha value \\
\hline
{\em r2} & Outline Red value \\
\hline
{\em g2} & Outline Green value \\
\hline
{\em b2} & Outline Blue value \\
\hline
{\em a2} & Outline Alpha value \\
\hline
{\em r3} & Shadow Red value \\
\hline
{\em g3} & Shadow Green value \\
\hline
{\em b3} & Shadow Blue value \\
\hline
{\em a3} & Shadow Alpha value\\
\hline
\end{DoxyParams}
This function sets the color values for a process level color class. This will cause all edje parts in the current process that have the specified color class to have their colors multiplied by these values. (Object level color classes set by edje\+\_\+object\+\_\+color\+\_\+class\+\_\+set() will override the values set by this function).

The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).

Setting color emits a signal \char`\"{}color\+\_\+class,set\char`\"{} with source being the given color class in all objects.

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Edje__Object__Color__Class_ga684435de625bdbb996e405e3eaaa54ad}{edje\+\_\+color\+\_\+class\+\_\+set()}.
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}
unlike Evas, Edje colors are {\bfseries not} pre-\/multiplied. That is, half-\/transparent white is 255 255 255 128.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
Eina\+\_\+\+Bool, E\+I\+N\+A\+\_\+\+T\+R\+UE on success and E\+I\+N\+A\+\_\+\+F\+A\+L\+SE on failure. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\+: ]\par
\hyperlink{edje-color-class_8c-example}{edje-\/color-\/class.\+c}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, eina\+\_\+hash\+\_\+add(), eina\+\_\+hash\+\_\+find(), eina\+\_\+hash\+\_\+iterator\+\_\+data\+\_\+new(), eina\+\_\+hash\+\_\+string\+\_\+superfast\+\_\+new(), E\+I\+N\+A\+\_\+\+I\+T\+E\+R\+A\+T\+O\+R\+\_\+\+F\+O\+R\+E\+A\+CH, eina\+\_\+iterator\+\_\+free(), eina\+\_\+stringshare\+\_\+add(), and E\+I\+N\+A\+\_\+\+T\+R\+UE.

\index{Edje Class\+: Color@{Edje Class\+: Color}!edje\+\_\+color\+\_\+class\+\_\+get@{edje\+\_\+color\+\_\+class\+\_\+get}}
\index{edje\+\_\+color\+\_\+class\+\_\+get@{edje\+\_\+color\+\_\+class\+\_\+get}!Edje Class\+: Color@{Edje Class\+: Color}}
\subsubsection[{\texorpdfstring{edje\+\_\+color\+\_\+class\+\_\+get(const char $\ast$color\+\_\+class, int $\ast$r, int $\ast$g, int $\ast$b, int $\ast$a, int $\ast$r2, int $\ast$g2, int $\ast$b2, int $\ast$a2, int $\ast$r3, int $\ast$g3, int $\ast$b3, int $\ast$a3)}{edje_color_class_get(const char *color_class, int *r, int *g, int *b, int *a, int *r2, int *g2, int *b2, int *a2, int *r3, int *g3, int *b3, int *a3)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\+\_\+\+Bool} edje\+\_\+color\+\_\+class\+\_\+get (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{color\+\_\+class, }
\item[{int $\ast$}]{r, }
\item[{int $\ast$}]{g, }
\item[{int $\ast$}]{b, }
\item[{int $\ast$}]{a, }
\item[{int $\ast$}]{r2, }
\item[{int $\ast$}]{g2, }
\item[{int $\ast$}]{b2, }
\item[{int $\ast$}]{a2, }
\item[{int $\ast$}]{r3, }
\item[{int $\ast$}]{g3, }
\item[{int $\ast$}]{b3, }
\item[{int $\ast$}]{a3}
\end{DoxyParamCaption}
)}\hypertarget{group__Edje__Object__Color__Class_gaf4e14706bc9766011ca60862f057d56e}{}\label{group__Edje__Object__Color__Class_gaf4e14706bc9766011ca60862f057d56e}


Get Edje color class. 


\begin{DoxyParams}{Parameters}
{\em color\+\_\+class} & \\
\hline
{\em r} & Object Red value \\
\hline
{\em g} & Object Green value \\
\hline
{\em b} & Object Blue value \\
\hline
{\em a} & Object Alpha value \\
\hline
{\em r2} & Outline Red value \\
\hline
{\em g2} & Outline Green value \\
\hline
{\em b2} & Outline Blue value \\
\hline
{\em a2} & Outline Alpha value \\
\hline
{\em r3} & Shadow Red value \\
\hline
{\em g3} & Shadow Green value \\
\hline
{\em b3} & Shadow Blue value \\
\hline
{\em a3} & Shadow Alpha value\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
E\+I\+N\+A\+\_\+\+T\+R\+UE if found or E\+I\+N\+A\+\_\+\+F\+A\+L\+SE if not found and all values are zeroed.
\end{DoxyReturn}
This function gets the color values for a process level color class. This value is the globally set and not per-\/object, that is, the value that would be used by objects if they did not override with edje\+\_\+object\+\_\+color\+\_\+class\+\_\+set().

The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Edje__Object__Color__Class_ga684435de625bdbb996e405e3eaaa54ad}{edje\+\_\+color\+\_\+class\+\_\+set()}.
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}
unlike Evas, Edje colors are {\bfseries not} pre-\/multiplied. That is, half-\/transparent white is 255 255 255 128. 
\end{DoxyNote}
\begin{Desc}
\item[Examples\+: ]\par
\hyperlink{edje-color-class_8c-example}{edje-\/color-\/class.\+c}.\end{Desc}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, eina\+\_\+hash\+\_\+find(), and E\+I\+N\+A\+\_\+\+T\+R\+UE.

\index{Edje Class\+: Color@{Edje Class\+: Color}!edje\+\_\+color\+\_\+class\+\_\+del@{edje\+\_\+color\+\_\+class\+\_\+del}}
\index{edje\+\_\+color\+\_\+class\+\_\+del@{edje\+\_\+color\+\_\+class\+\_\+del}!Edje Class\+: Color@{Edje Class\+: Color}}
\subsubsection[{\texorpdfstring{edje\+\_\+color\+\_\+class\+\_\+del(const char $\ast$color\+\_\+class)}{edje_color_class_del(const char *color_class)}}]{\setlength{\rightskip}{0pt plus 5cm}void edje\+\_\+color\+\_\+class\+\_\+del (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{color\+\_\+class}
\end{DoxyParamCaption}
)}\hypertarget{group__Edje__Object__Color__Class_ga0d30416497554e3f50c893de5c0cccad}{}\label{group__Edje__Object__Color__Class_ga0d30416497554e3f50c893de5c0cccad}


Delete edje color class. 


\begin{DoxyParams}{Parameters}
{\em color\+\_\+class} & This function deletes any values at the process level for the specified color class. \\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
Deleting the color class will revert it to the values defined in the theme file.
\end{DoxyNote}
Deleting the color class will emit the signal \char`\"{}color\+\_\+class,del\char`\"{} to all the Edje objects in the running program. \begin{Desc}
\item[Examples\+: ]\par
\hyperlink{edje-color-class_8c-example}{edje-\/color-\/class.\+c}.\end{Desc}


References eina\+\_\+hash\+\_\+del(), eina\+\_\+hash\+\_\+find(), eina\+\_\+hash\+\_\+iterator\+\_\+data\+\_\+new(), E\+I\+N\+A\+\_\+\+I\+T\+E\+R\+A\+T\+O\+R\+\_\+\+F\+O\+R\+E\+A\+CH, eina\+\_\+iterator\+\_\+free(), eina\+\_\+stringshare\+\_\+del(), and E\+I\+N\+A\+\_\+\+T\+R\+UE.

\index{Edje Class\+: Color@{Edje Class\+: Color}!edje\+\_\+color\+\_\+class\+\_\+list@{edje\+\_\+color\+\_\+class\+\_\+list}}
\index{edje\+\_\+color\+\_\+class\+\_\+list@{edje\+\_\+color\+\_\+class\+\_\+list}!Edje Class\+: Color@{Edje Class\+: Color}}
\subsubsection[{\texorpdfstring{edje\+\_\+color\+\_\+class\+\_\+list(void)}{edje_color_class_list(void)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\+\_\+\+List}$\ast$ edje\+\_\+color\+\_\+class\+\_\+list (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}\hypertarget{group__Edje__Object__Color__Class_gac9de6885daf1eea7d3f6e3e822a4ca65}{}\label{group__Edje__Object__Color__Class_gac9de6885daf1eea7d3f6e3e822a4ca65}


Lists color classes. 

\begin{DoxyReturn}{Returns}
A list of color class names (strings). These strings and the list must be free()\textquotesingle{}d by the caller.
\end{DoxyReturn}
This function lists all color classes known about by the current process. \begin{Desc}
\item[Examples\+: ]\par
\hyperlink{edje-color-class_8c-example}{edje-\/color-\/class.\+c}.\end{Desc}


References \+\_\+\+Eina\+\_\+\+Hash\+\_\+\+Tuple\+::data, E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, eina\+\_\+hash\+\_\+find(), eina\+\_\+hash\+\_\+foreach(), eina\+\_\+hash\+\_\+iterator\+\_\+data\+\_\+new(), eina\+\_\+iterator\+\_\+free(), eina\+\_\+iterator\+\_\+next(), E\+I\+N\+A\+\_\+\+M\+A\+G\+I\+C\+\_\+\+S\+ET, E\+I\+N\+A\+\_\+\+T\+R\+UE, and \+\_\+\+Eina\+\_\+\+Hash\+\_\+\+Tuple\+::key.

\index{Edje Class\+: Color@{Edje Class\+: Color}!edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new@{edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new}}
\index{edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new@{edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new}!Edje Class\+: Color@{Edje Class\+: Color}}
\subsubsection[{\texorpdfstring{edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new(void)}{edje_color_class_active_iterator_new(void)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\+\_\+\+Iterator}$\ast$ edje\+\_\+color\+\_\+class\+\_\+active\+\_\+iterator\+\_\+new (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}\hypertarget{group__Edje__Object__Color__Class_ga697281c9726852df02a73dd715a70727}{}\label{group__Edje__Object__Color__Class_ga697281c9726852df02a73dd715a70727}


Iterate over all the active class of an application. 

\begin{DoxyReturn}{Returns}
an iterator of Edje\+\_\+\+Color\+\_\+\+Class of the currently active color class
\end{DoxyReturn}
This function only iterate over the Edje\+\_\+\+Color\+\_\+\+Class in use by an application.

\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References \+\_\+\+Eina\+\_\+\+Hash\+\_\+\+Tuple\+::data, E\+D\+J\+E\+\_\+\+P\+A\+R\+T\+\_\+\+T\+Y\+P\+E\+\_\+\+G\+R\+O\+UP, E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, eina\+\_\+hash\+\_\+del(), eina\+\_\+hash\+\_\+direct\+\_\+add(), eina\+\_\+hash\+\_\+find(), eina\+\_\+hash\+\_\+foreach(), eina\+\_\+hash\+\_\+iterator\+\_\+tuple\+\_\+new(), eina\+\_\+iterator\+\_\+free(), eina\+\_\+iterator\+\_\+next(), eina\+\_\+list\+\_\+append(), E\+I\+N\+A\+\_\+\+L\+I\+S\+T\+\_\+\+F\+O\+R\+E\+A\+CH, E\+I\+N\+A\+\_\+\+L\+I\+S\+T\+\_\+\+F\+R\+EE, E\+I\+N\+A\+\_\+\+M\+A\+G\+I\+C\+\_\+\+S\+ET, eina\+\_\+stringshare\+\_\+add(), eina\+\_\+stringshare\+\_\+del(), and E\+I\+N\+A\+\_\+\+T\+R\+UE.

\index{Edje Class\+: Color@{Edje Class\+: Color}!edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new@{edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new}}
\index{edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new@{edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new}!Edje Class\+: Color@{Edje Class\+: Color}}
\subsubsection[{\texorpdfstring{edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new(\+Eina\+\_\+\+File $\ast$f)}{edje_mmap_color_class_iterator_new(Eina_File *f)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\+\_\+\+Iterator}$\ast$ edje\+\_\+mmap\+\_\+color\+\_\+class\+\_\+iterator\+\_\+new (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+File} $\ast$}]{f}
\end{DoxyParamCaption}
)}\hypertarget{group__Edje__Object__Color__Class_gac6c3cbc88606a2f6f16e96280785df15}{}\label{group__Edje__Object__Color__Class_gac6c3cbc88606a2f6f16e96280785df15}


Iterate over all the color class provided by an Edje file. 

\begin{DoxyReturn}{Returns}
an iterator of Edje\+\_\+\+Color\+\_\+\+Class provided by the Edje file.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References eina\+\_\+hash\+\_\+iterator\+\_\+tuple\+\_\+new(), and E\+I\+N\+A\+\_\+\+M\+A\+G\+I\+C\+\_\+\+S\+ET.

