\hypertarget{group__Edje__Part__Box}{}\doxysection{Edje Box Part}
\label{group__Edje__Part__Box}\index{Edje Box Part@{Edje Box Part}}


Functions that deal with parts of type box.  


\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \mbox{\hyperlink{group__Edje__Part__Box_gac29c0dd222aaab5743b2a57f05d3c08d}{edje\+\_\+box\+\_\+layout\+\_\+register}} (const char $\ast$name, \mbox{\hyperlink{group__Evas__Object__Box__Group_gad3ef5177a00dcda0c08c86287419d5b5}{Evas\+\_\+\+Object\+\_\+\+Box\+\_\+\+Layout}} func, void $\ast$($\ast$layout\+\_\+data\+\_\+get)(void $\ast$), void($\ast$layout\+\_\+data\+\_\+free)(void $\ast$), void($\ast$free\+\_\+data)(void $\ast$), void $\ast$data)
\begin{DoxyCompactList}\small\item\em Registers a custom layout to be used in edje boxes. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Functions that deal with parts of type box. 

Box is a container type for parts, that means it can contain other parts. 

\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Edje__Part__Box_gac29c0dd222aaab5743b2a57f05d3c08d}\label{group__Edje__Part__Box_gac29c0dd222aaab5743b2a57f05d3c08d}} 
\index{Edje Box Part@{Edje Box Part}!edje\_box\_layout\_register@{edje\_box\_layout\_register}}
\index{edje\_box\_layout\_register@{edje\_box\_layout\_register}!Edje Box Part@{Edje Box Part}}
\doxysubsubsection{\texorpdfstring{edje\_box\_layout\_register()}{edje\_box\_layout\_register()}}
{\footnotesize\ttfamily void edje\+\_\+box\+\_\+layout\+\_\+register (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{\mbox{\hyperlink{group__Evas__Object__Box__Group_gad3ef5177a00dcda0c08c86287419d5b5}{Evas\+\_\+\+Object\+\_\+\+Box\+\_\+\+Layout}}}]{func,  }\item[{void $\ast$($\ast$)(void $\ast$)}]{layout\+\_\+data\+\_\+get,  }\item[{void($\ast$)(void $\ast$)}]{layout\+\_\+data\+\_\+free,  }\item[{void($\ast$)(void $\ast$)}]{free\+\_\+data,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Registers a custom layout to be used in edje boxes. 


\begin{DoxyParams}{Parameters}
{\em name} & The name of the layout \\
\hline
{\em func} & The function defining the layout \\
\hline
{\em layout\+\_\+data\+\_\+get} & This function gets the custom data pointer for func \\
\hline
{\em layout\+\_\+data\+\_\+free} & Passed to func to free its private data when needed \\
\hline
{\em free\+\_\+data} & Frees data \\
\hline
{\em data} & Private pointer passed to layout\+\_\+data\+\_\+get\\
\hline
\end{DoxyParams}
This function registers custom layouts that can be referred from themes by the registered name. The Evas\+\_\+\+Object\+\_\+\+Box\+\_\+\+Layout functions receive two pointers for internal use, one being private data, and the other the function to free that data when it\textquotesingle{}s not longer needed. From Edje, this private data will be retrieved by calling layout\+\_\+data\+\_\+get, and layout\+\_\+data\+\_\+free will be the free function passed to func. layout\+\_\+data\+\_\+get will be called with data as its parameter, and this one will be freed by free\+\_\+data whenever the layout is unregistered from Edje. \begin{Desc}
\item[Examples]\par
\mbox{\hyperlink{edje-box2_8c-example}{edje-\/box2.\+c}}.\end{Desc}


References \mbox{\hyperlink{group__Eina__Rbtree__Group_gaddaf4eb05c2ea7f7c1a86271af51cde4}{eina\+\_\+rbtree\+\_\+inline\+\_\+insert()}}, and \mbox{\hyperlink{group__Eina__Rbtree__Group_ga6fce88dec65a4118d5fb9cfa3bad150f}{eina\+\_\+rbtree\+\_\+inline\+\_\+remove()}}.

