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


Functions that deal with parts of type box.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{group__Edje__Part__Box_gac29c0dd222aaab5743b2a57f05d3c08d}{edje\+\_\+box\+\_\+layout\+\_\+register} (const char $\ast$name, \hyperlink{group__Evas__Object__Box_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}


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

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

\subsection{Function Documentation}
\hypertarget{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}}
\subsubsection[{edje\+\_\+box\+\_\+layout\+\_\+register}]{\setlength{\rightskip}{0pt plus 5cm}void edje\+\_\+box\+\_\+layout\+\_\+register (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{name, }
\item[{{\bf 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}
)}}\label{group__Edje__Part__Box_gac29c0dd222aaab5743b2a57f05d3c08d}


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'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
\hyperlink{edje-box2_8c-example}{edje-\/box2.\+c}.\end{Desc}


References eina\+\_\+rbtree\+\_\+inline\+\_\+insert(), eina\+\_\+rbtree\+\_\+inline\+\_\+remove(), and E\+R\+R.

