\hypertarget{struct__Elm__Prefs__Page__Iface}{}\doxysection{\+\_\+\+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 \mbox{\hyperlink{group__Elm__Prefs_elm-prefs-widget}{Prefs}} widget and the real widgets implementing them.  




{\ttfamily \#include $<$elm\+\_\+prefs\+\_\+common.\+h$>$}

\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
unsigned int \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface_affbf60ec3fa09d5bb98f42084bf3363f}{abi\+\_\+version}}
\begin{DoxyCompactList}\small\item\em always use\+: \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$($\ast$ \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface_a78d3ae62c42cd440bb2714e477a6ee31}{add}} )(const \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}} $\ast$iface, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$prefs)
\begin{DoxyCompactList}\small\item\em Function to instantiate the page widget. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_a51c4782d3ae1521c26df8c2b777e2b70}\label{struct__Elm__Prefs__Page__Iface_a51c4782d3ae1521c26df8c2b777e2b70}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries title\+\_\+set} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, const char $\ast$title)
\begin{DoxyCompactList}\small\item\em function to set a title on the page widget \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_add4f55bad98603fc26b99582d961dd7f}\label{struct__Elm__Prefs__Page__Iface_add4f55bad98603fc26b99582d961dd7f}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries sub\+\_\+title\+\_\+set} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, const char $\ast$sub\+\_\+title)
\begin{DoxyCompactList}\small\item\em function to set a sub-\/title on the page widget \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_ae19d15753b90522d1caa673c8300506e}\label{struct__Elm__Prefs__Page__Iface_ae19d15753b90522d1caa673c8300506e}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries icon\+\_\+set} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, const char $\ast$icon)
\begin{DoxyCompactList}\small\item\em function to set an icon on the page widget \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_a0f3ffb992d7661634f829416110cfab4}\label{struct__Elm__Prefs__Page__Iface_a0f3ffb992d7661634f829416110cfab4}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries item\+\_\+pack} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$it, const \mbox{\hyperlink{group__Elm__Prefs_ga7525bee64184478acad1e807c3e570ae}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Type}} type, const \mbox{\hyperlink{struct__Elm__Prefs__Item__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Iface}} $\ast$iface)
\begin{DoxyCompactList}\small\item\em function to pack an item (widget) on the page widget \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_aa464ad3100824342201f465f6060757a}\label{struct__Elm__Prefs__Page__Iface_aa464ad3100824342201f465f6060757a}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries item\+\_\+unpack} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$it)
\begin{DoxyCompactList}\small\item\em function to unpack an item (widget) on the page widget \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_a66aa050e07dd48163c90937a61599118}\label{struct__Elm__Prefs__Page__Iface_a66aa050e07dd48163c90937a61599118}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries item\+\_\+pack\+\_\+before} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$it, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$it\+\_\+before, const \mbox{\hyperlink{group__Elm__Prefs_ga7525bee64184478acad1e807c3e570ae}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Type}} type, const \mbox{\hyperlink{struct__Elm__Prefs__Item__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Iface}} $\ast$iface)
\begin{DoxyCompactList}\small\item\em function to pack an item (widget) on the page widget, before a pre-\/existing, referential, packed one \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_a7f954bf520144ef15bf8e8034a48dccb}\label{struct__Elm__Prefs__Page__Iface_a7f954bf520144ef15bf8e8034a48dccb}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ {\bfseries item\+\_\+pack\+\_\+after} )(\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$it, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$it\+\_\+after, const \mbox{\hyperlink{group__Elm__Prefs_ga7525bee64184478acad1e807c3e570ae}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Type}} type, const \mbox{\hyperlink{struct__Elm__Prefs__Item__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Item\+\_\+\+Iface}} $\ast$iface)
\end{DoxyCompactItemize}


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

This structure defines the interface between the \mbox{\hyperlink{group__Elm__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 \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface_a78d3ae62c42cd440bb2714e477a6ee31}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::add}}
\item \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface_a0f3ffb992d7661634f829416110cfab4}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+pack}}
\item \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface_aa464ad3100824342201f465f6060757a}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::item\+\_\+unpack}}
\item \mbox{\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}


\doxysubsection{Field Documentation}
\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_affbf60ec3fa09d5bb98f42084bf3363f}\label{struct__Elm__Prefs__Page__Iface_affbf60ec3fa09d5bb98f42084bf3363f}} 
\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}}
\doxysubsubsection{\texorpdfstring{abi\_version}{abi\_version}}
{\footnotesize\ttfamily unsigned int \+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::abi\+\_\+version}



always use\+: 


\begin{DoxyItemize}
\item ELM\+\_\+\+PREFS\+\_\+\+PAGE\+\_\+\+IFACE\+\_\+\+ABI\+\_\+\+VERSION to declare.
\item elm\+\_\+prefs\+\_\+widget\+\_\+iface\+\_\+abi\+\_\+version\+\_\+get() to check. 
\end{DoxyItemize}

Referenced by \mbox{\hyperlink{group__Elm__Prefs_gad2390b92c0d279545f78ff7224560949}{elm\+\_\+prefs\+\_\+page\+\_\+iface\+\_\+register()}}.

\mbox{\Hypertarget{struct__Elm__Prefs__Page__Iface_a78d3ae62c42cd440bb2714e477a6ee31}\label{struct__Elm__Prefs__Page__Iface_a78d3ae62c42cd440bb2714e477a6ee31}} 
\index{\_Elm\_Prefs\_Page\_Iface@{\_Elm\_Prefs\_Page\_Iface}!add@{add}}
\index{add@{add}!\_Elm\_Prefs\_Page\_Iface@{\_Elm\_Prefs\_Page\_Iface}}
\doxysubsubsection{\texorpdfstring{add}{add}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$($\ast$ \+\_\+\+Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface\+::add) (const \mbox{\hyperlink{struct__Elm__Prefs__Page__Iface}{Elm\+\_\+\+Prefs\+\_\+\+Page\+\_\+\+Iface}} $\ast$iface, \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$prefs)}



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 EINA\+\_\+\+TRUE}, on success or {\ttfamily EINA\+\_\+\+FALSE}, otherwise. 