\section{Slideshow}
\label{group__Slideshow}\index{Slideshow@{Slideshow}}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct__Elm__Slideshow__Item__Class}{\+\_\+\+Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class}
\begin{DoxyCompactList}\small\item\em member definitions of \hyperlink{group__Slideshow_gae4db5beb584edd6edbe1be25b3996f9e}{Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class} \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef Evas\+\_\+\+Object $\ast$($\ast$ \hyperlink{group__Slideshow_ga925eb428226ed26cba99f5bd7608bc6c}{Slideshow\+Item\+Get\+Func}) (void $\ast$data, Evas\+\_\+\+Object $\ast$obj)
\begin{DoxyCompactList}\small\item\em Image fetching class function for slideshow item classes. \end{DoxyCompactList}\item 
typedef void($\ast$ \hyperlink{group__Slideshow_ga2c3a9df064a916b934550ab245f1cd79}{Slideshow\+Item\+Del\+Func}) (void $\ast$data, Evas\+\_\+\+Object $\ast$obj)
\begin{DoxyCompactList}\small\item\em Deletion class function for slideshow item classes. \end{DoxyCompactList}\item 
typedef struct \hyperlink{struct__Elm__Slideshow__Item__Class}{\+\_\+\+Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class} \hyperlink{group__Slideshow_gae4db5beb584edd6edbe1be25b3996f9e}{Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class}\label{group__Slideshow_gae4db5beb584edd6edbe1be25b3996f9e}

\begin{DoxyCompactList}\small\item\em Slideshow item class definition struct. \end{DoxyCompactList}\item 
typedef struct \+\_\+\+Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class\+\_\+\+Func \hyperlink{group__Slideshow_gaa5815613f30cccd78177d4a4fc122624}{Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class\+\_\+\+Func}\label{group__Slideshow_gaa5815613f30cccd78177d4a4fc122624}

\begin{DoxyCompactList}\small\item\em Class functions for slideshow item classes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Slideshow_gab5f2e09e948c7a7e8e029a922a2b8527}{elm\+\_\+slideshow\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Add a new slideshow widget to the given parent Elementary (container) object. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics[width=\textwidth,height=\textheight/2,keepaspectratio=true]{slideshow_inheritance_tree}}
\end{DoxyImageNoCaption}


 
\begin{DoxyImageNoCaption}
  \mbox{\includegraphics[width=\textwidth,height=\textheight/2,keepaspectratio=true]{img/widget/slideshow/preview-00}}
\end{DoxyImageNoCaption}


This widget, as the name indicates, is a pre-\/made image slideshow panel, with A\+PI functions acting on (child) image items presentation. Between those actions, are\+:
\begin{DoxyItemize}
\item advance to next/previous image
\item select the style of image transition animation
\item set the exhibition time for each image
\item start/stop the slideshow
\end{DoxyItemize}

The transition animations are defined in the widget\textquotesingle{}s theme, consequently new animations can be added without having to update the widget\textquotesingle{}s code.\hypertarget{group__Slideshow_Slideshow_Items}{}\subsection{Slideshow items}\label{group__Slideshow_Slideshow_Items}
For slideshow items, just like for \hyperlink{group__Genlist}{genlist} ones, the user defines a {\bfseries classes}, specifying functions that will be called on the item\textquotesingle{}s creation and deletion times.

The \hyperlink{group__Slideshow_gae4db5beb584edd6edbe1be25b3996f9e}{Elm\+\_\+\+Slideshow\+\_\+\+Item\+\_\+\+Class} structure contains the following members\+:


\begin{DoxyItemize}
\item {\ttfamily func.\+get} -\/ When an item is displayed, this function is called, and it\textquotesingle{}s where one should create the item object, de facto. For example, the object can be a pure Evas image object or an Elementary \hyperlink{group__Photocam}{photocam} widget. See \hyperlink{group__Slideshow_ga925eb428226ed26cba99f5bd7608bc6c}{Slideshow\+Item\+Get\+Func}.
\item {\ttfamily func.\+del} -\/ When an item is no more displayed, this function is called, where the user must delete any data associated to the item. See \hyperlink{group__Slideshow_ga2c3a9df064a916b934550ab245f1cd79}{Slideshow\+Item\+Del\+Func}.
\end{DoxyItemize}\hypertarget{group__Slideshow_Slideshow_Caching}{}\subsection{Slideshow caching}\label{group__Slideshow_Slideshow_Caching}
The slideshow provides facilities to have items adjacent to the one being displayed {\bfseries already \char`\"{}realized\char`\"{}} (i.\+e. loaded) for you, so that the system does not have to decode image data anymore at the time it has to actually switch images on its viewport. The user is able to set the numbers of items to be cached {\bfseries before} and {\bfseries after} the current item, in the widget\textquotesingle{}s item list.

This widget inherits from the \hyperlink{group__Layout}{Layout} one, so that all the functions acting on it also work for slideshow objects.

This widget emits the following signals, besides the ones sent from Layout\+:
\begin{DoxyItemize}
\item {\ttfamily \char`\"{}changed\char`\"{}} -\/ when the slideshow switches its view to a new item. event\+\_\+info parameter in callback contains the current visible item
\item {\ttfamily \char`\"{}transition,end\char`\"{}} -\/ when a slide transition ends. event\+\_\+info parameter in callback contains the current visible item
\item {\ttfamily \char`\"{}focused\char`\"{}} -\/ When the slideshow has received focus. (since 1.\+8)
\item {\ttfamily \char`\"{}unfocused\char`\"{}} -\/ When the slideshow has lost focus. (since 1.\+8)
\item {\ttfamily \char`\"{}language,changed\char`\"{}} -\/ the program\textquotesingle{}s language changed (since 1.\+9)
\end{DoxyItemize}

Supported {\ttfamily elm\+\_\+object\+\_\+item} common A\+P\+Is. \begin{DoxyItemize}
\item elm\+\_\+object\+\_\+item\+\_\+del\end{DoxyItemize}
List of examples for the slideshow widget\+: \begin{DoxyItemize}
\item \hyperlink{slideshow_example}{Slideshow widget example} \end{DoxyItemize}


\subsection{Typedef Documentation}
\index{Slideshow@{Slideshow}!Slideshow\+Item\+Del\+Func@{Slideshow\+Item\+Del\+Func}}
\index{Slideshow\+Item\+Del\+Func@{Slideshow\+Item\+Del\+Func}!Slideshow@{Slideshow}}
\subsubsection[{\texorpdfstring{Slideshow\+Item\+Del\+Func}{SlideshowItemDelFunc}}]{\setlength{\rightskip}{0pt plus 5cm}typedef void($\ast$ Slideshow\+Item\+Del\+Func) (void $\ast$data, Evas\+\_\+\+Object $\ast$obj)}\label{group__Slideshow_ga2c3a9df064a916b934550ab245f1cd79}


Deletion class function for slideshow item classes. 

\index{Slideshow@{Slideshow}!Slideshow\+Item\+Get\+Func@{Slideshow\+Item\+Get\+Func}}
\index{Slideshow\+Item\+Get\+Func@{Slideshow\+Item\+Get\+Func}!Slideshow@{Slideshow}}
\subsubsection[{\texorpdfstring{Slideshow\+Item\+Get\+Func}{SlideshowItemGetFunc}}]{\setlength{\rightskip}{0pt plus 5cm}typedef Evas\+\_\+\+Object$\ast$($\ast$ Slideshow\+Item\+Get\+Func) (void $\ast$data, Evas\+\_\+\+Object $\ast$obj)}\label{group__Slideshow_ga925eb428226ed26cba99f5bd7608bc6c}


Image fetching class function for slideshow item classes. 



\subsection{Function Documentation}
\index{Slideshow@{Slideshow}!elm\+\_\+slideshow\+\_\+add@{elm\+\_\+slideshow\+\_\+add}}
\index{elm\+\_\+slideshow\+\_\+add@{elm\+\_\+slideshow\+\_\+add}!Slideshow@{Slideshow}}
\subsubsection[{\texorpdfstring{elm\+\_\+slideshow\+\_\+add(\+Evas\+\_\+\+Object $\ast$parent)}{elm_slideshow_add(Evas_Object *parent)}}]{\setlength{\rightskip}{0pt plus 5cm}Evas\+\_\+\+Object$\ast$ elm\+\_\+slideshow\+\_\+add (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{parent}
\end{DoxyParamCaption}
)}\label{group__Slideshow_gab5f2e09e948c7a7e8e029a922a2b8527}


Add a new slideshow widget to the given parent Elementary (container) object. 


\begin{DoxyParams}{Parameters}
{\em parent} & The parent object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A new slideshow widget handle or {\ttfamily N\+U\+LL}, on errors
\end{DoxyReturn}
This function inserts a new slideshow widget on the canvas. 

References elm\+\_\+layout\+\_\+content\+\_\+set().

