\section{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface Struct Reference}
\label{struct__Elm__Prefs__Page__Iface}\index{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}}


Interface between pages of the \hyperlink{group__Prefs_elm-prefs-widget}{Prefs} widget and the real widgets implementing them.  


\subsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
unsigned int \hyperlink{struct__Elm__Prefs__Page__Iface_affbf60ec3fa09d5bb98f42084bf3363f}{abi\+\_\+version}
\begin{DoxyCompactList}\small\item\em always use\+: \end{DoxyCompactList}\item 
Evas\+\_\+\+Object $\ast$($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_a1a665de3ea5a485d8131dce40158b544}{add} )(const \hyperlink{struct__Elm__Prefs__Page__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface} $\ast$iface, Evas\+\_\+\+Object $\ast$prefs)
\begin{DoxyCompactList}\small\item\em Function to instantiate the page widget. \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_a6b57be2c580fb9e333c50326a3d8b5ab}{title\+\_\+set} )(Evas\+\_\+\+Object $\ast$obj, const char $\ast$title)\label{struct__Elm__Prefs__Page__Iface_a6b57be2c580fb9e333c50326a3d8b5ab}

\begin{DoxyCompactList}\small\item\em function to set a title on the page widget \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_ab066e1f6e7265f9eb00716ee3d888873}{sub\+\_\+title\+\_\+set} )(Evas\+\_\+\+Object $\ast$obj, const char $\ast$sub\+\_\+title)\label{struct__Elm__Prefs__Page__Iface_ab066e1f6e7265f9eb00716ee3d888873}

\begin{DoxyCompactList}\small\item\em function to set a sub-\/title on the page widget \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_ac2407445186daa68b4088e8ca7324c3d}{icon\+\_\+set} )(Evas\+\_\+\+Object $\ast$obj, const char $\ast$icon)\label{struct__Elm__Prefs__Page__Iface_ac2407445186daa68b4088e8ca7324c3d}

\begin{DoxyCompactList}\small\item\em function to set an icon on the page widget \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_a7e866f775f44c6b86f8eac1be321dab5}{item\+\_\+pack} )(Evas\+\_\+\+Object $\ast$obj, Evas\+\_\+\+Object $\ast$it, const \hyperlink{group__Elm__Prefs_ga1b10884ca8cd0b3626f437aad775e2f5}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Type} type, const \hyperlink{struct__Elm__Prefs__Item__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Iface} $\ast$iface)\label{struct__Elm__Prefs__Page__Iface_a7e866f775f44c6b86f8eac1be321dab5}

\begin{DoxyCompactList}\small\item\em function to pack an item (widget) on the page widget \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_a93b8c7d37f88f9623e9189bc89f8d514}{item\+\_\+unpack} )(Evas\+\_\+\+Object $\ast$obj, Evas\+\_\+\+Object $\ast$it)\label{struct__Elm__Prefs__Page__Iface_a93b8c7d37f88f9623e9189bc89f8d514}

\begin{DoxyCompactList}\small\item\em function to unpack an item (widget) on the page widget \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool($\ast$ \hyperlink{struct__Elm__Prefs__Page__Iface_affbd02865d879675a432c2f478ed666a}{item\+\_\+pack\+\_\+before} )(Evas\+\_\+\+Object $\ast$obj, Evas\+\_\+\+Object $\ast$it, Evas\+\_\+\+Object $\ast$it\+\_\+before, const \hyperlink{group__Elm__Prefs_ga1b10884ca8cd0b3626f437aad775e2f5}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Type} type, const \hyperlink{struct__Elm__Prefs__Item__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Iface} $\ast$iface)\label{struct__Elm__Prefs__Page__Iface_affbd02865d879675a432c2f478ed666a}

\begin{DoxyCompactList}\small\item\em function to pack an item (widget) on the page widget, before a pre-\/existing, referential, packed one \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Interface between pages of the \hyperlink{group__Prefs_elm-prefs-widget}{Prefs} widget and the real widgets implementing them. 

This structure defines the interface between the \hyperlink{group__Prefs_elm-prefs-widget}{Prefs} widget's pages and Elementary widgets implementing them.

It is {\bfseries mandatory} that the following functions be implemented, at least, for a page widget\+:


\begin{DoxyItemize}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_a1a665de3ea5a485d8131dce40158b544}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::add}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_a7e866f775f44c6b86f8eac1be321dab5}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+pack}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_a93b8c7d37f88f9623e9189bc89f8d514}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+unpack}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_affbd02865d879675a432c2f478ed666a}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+pack\+\_\+before}
\item \#\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+pack\+\_\+after
\end{DoxyItemize}

\begin{DoxyNote}{Note}
For regular, non-\/page prefs items, refer to \#\+Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Iface.
\end{DoxyNote}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}


\subsection{Field Documentation}
\index{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}!abi\+\_\+version@{abi\+\_\+version}}
\index{abi\+\_\+version@{abi\+\_\+version}!\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}}
\subsubsection[{abi\+\_\+version}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int \+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::abi\+\_\+version}\label{struct__Elm__Prefs__Page__Iface_affbf60ec3fa09d5bb98f42084bf3363f}


always use\+: 


\begin{DoxyItemize}
\item \#\+E\+L\+M\+\_\+\+P\+R\+E\+F\+S\+\_\+\+P\+A\+G\+E\+\_\+\+I\+F\+A\+C\+E\+\_\+\+A\+B\+I\+\_\+\+V\+E\+R\+S\+I\+O\+N to declare.
\item elm\+\_\+prefs\+\_\+widget\+\_\+iface\+\_\+abi\+\_\+version\+\_\+get() to check. 
\end{DoxyItemize}\index{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}!add@{add}}
\index{add@{add}!\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}}
\subsubsection[{add}]{\setlength{\rightskip}{0pt plus 5cm}Evas\+\_\+\+Object$\ast$($\ast$ \+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::add)(const {\bf Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface} $\ast$iface, Evas\+\_\+\+Object $\ast$prefs)}\label{struct__Elm__Prefs__Page__Iface_a1a665de3ea5a485d8131dce40158b544}


Function to instantiate the page widget. 

It must return the widget handle, which should be the {\ttfamily obj} argument on the functions which follow. That object argument, by the way, should always have their respective \#\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Node handle accessible via a {\ttfamily \char`\"{}prefs\+\_\+page\char`\"{}} Evas object data value. The return value of the following functions should be {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E}, on success or {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E}, otherwise. 