\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_a5565c68abd4919f2dff875a9e025df39}{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_a51c4782d3ae1521c26df8c2b777e2b70}{title\+\_\+set} )(Evas\+\_\+\+Object $\ast$obj, const char $\ast$title)\label{struct__Elm__Prefs__Page__Iface_a51c4782d3ae1521c26df8c2b777e2b70}

\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_add4f55bad98603fc26b99582d961dd7f}{sub\+\_\+title\+\_\+set} )(Evas\+\_\+\+Object $\ast$obj, const char $\ast$sub\+\_\+title)\label{struct__Elm__Prefs__Page__Iface_add4f55bad98603fc26b99582d961dd7f}

\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_ae19d15753b90522d1caa673c8300506e}{icon\+\_\+set} )(Evas\+\_\+\+Object $\ast$obj, const char $\ast$icon)\label{struct__Elm__Prefs__Page__Iface_ae19d15753b90522d1caa673c8300506e}

\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_a0f3ffb992d7661634f829416110cfab4}{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_a0f3ffb992d7661634f829416110cfab4}

\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_aa464ad3100824342201f465f6060757a}{item\+\_\+unpack} )(Evas\+\_\+\+Object $\ast$obj, Evas\+\_\+\+Object $\ast$it)\label{struct__Elm__Prefs__Page__Iface_aa464ad3100824342201f465f6060757a}

\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_a66aa050e07dd48163c90937a61599118}{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_a66aa050e07dd48163c90937a61599118}

\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\textquotesingle{}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_a5565c68abd4919f2dff875a9e025df39}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::add}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_a0f3ffb992d7661634f829416110cfab4}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+pack}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_aa464ad3100824342201f465f6060757a}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+unpack}
\item \hyperlink{struct__Elm__Prefs__Page__Iface_a66aa050e07dd48163c90937a61599118}{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[{\texorpdfstring{abi\+\_\+version}{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\+ON to declare.
\item elm\+\_\+prefs\+\_\+widget\+\_\+iface\+\_\+abi\+\_\+version\+\_\+get() to check. 
\end{DoxyItemize}

Referenced by elm\+\_\+prefs\+\_\+page\+\_\+iface\+\_\+register().

\index{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}!add@{add}}
\index{add@{add}!\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface@{\+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}}
\subsubsection[{\texorpdfstring{add}{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_a5565c68abd4919f2dff875a9e025df39}


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\+UE}, on success or {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}, otherwise. 