\section{Photocam}
\label{group__Photocam}\index{Photocam@{Photocam}}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \+\_\+\+Elm\+\_\+\+Photocam\+\_\+\+Progress \hyperlink{group__Photocam_ga53a645d0cb128b12cf858ead33bf28d6}{Elm\+\_\+\+Photocam\+\_\+\+Progress}
\begin{DoxyCompactList}\small\item\em Structure associated with smart callback \textquotesingle{}download,progress\textquotesingle{}. \end{DoxyCompactList}\item 
typedef struct \+\_\+\+Elm\+\_\+\+Photocam\+\_\+\+Error \hyperlink{group__Photocam_ga3ddf6ac3c28775515b59ce9661f2a4b2}{Elm\+\_\+\+Photocam\+\_\+\+Error}
\begin{DoxyCompactList}\small\item\em Structre associated with smart callback \textquotesingle{}download,error\textquotesingle{}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Enumerations}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED void \hyperlink{group__Photocam_ga8a78fc7400ba30fe324d2a2ffe0a4335}{elm\+\_\+photocam\+\_\+bounce\+\_\+set} (Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool h\+\_\+bounce, Eina\+\_\+\+Bool v\+\_\+bounce)
\begin{DoxyCompactList}\small\item\em Set the photocam scrolling bouncing. \end{DoxyCompactList}\item 
E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED void \hyperlink{group__Photocam_gaa71330d1d63f3cd0abda5aae6e34ad49}{elm\+\_\+photocam\+\_\+bounce\+\_\+get} (const Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool $\ast$h\+\_\+bounce, Eina\+\_\+\+Bool $\ast$v\+\_\+bounce)
\begin{DoxyCompactList}\small\item\em Get the photocam scrolling bouncing. \end{DoxyCompactList}\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Photocam_gabd50b6fda6afe732478a33e4999a1386}{elm\+\_\+photocam\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Add a new Photocam object. \end{DoxyCompactList}\item 
void \hyperlink{group__Photocam_ga51a9dd5b4e7c6593e9734d1838e11266}{elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in} (Evas\+\_\+\+Object $\ast$obj, int x, int y, int w, int h)
\begin{DoxyCompactList}\small\item\em Bring in the viewed portion of the image. \end{DoxyCompactList}\item 
Evas\+\_\+\+Load\+\_\+\+Error \hyperlink{group__Photocam_gaa4cb6e360aab7307380ac92de4e04dd2}{elm\+\_\+photocam\+\_\+file\+\_\+set} (Evas\+\_\+\+Object $\ast$obj, const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Set the photo file to be shown. \end{DoxyCompactList}\item 
const char $\ast$ \hyperlink{group__Photocam_ga74507a48aa41f918fc1adb4b55164aed}{elm\+\_\+photocam\+\_\+file\+\_\+get} (const Evas\+\_\+\+Object $\ast$obj)
\begin{DoxyCompactList}\small\item\em Returns the path of the current image file. \end{DoxyCompactList}\end{DoxyCompactItemize}


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


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


Photocam is a widget meant specifically for displaying high-\/resolution digital camera photos, giving speedy feedback (fast load), zooming and panning as well as fitting logic, all with low memory footprint. It is entirely focused on {\bfseries jpeg} images, and takes advantage of properties of the jpeg format (via Evas loader features in the jpeg loader).

Signals that you can add callbacks for are\+: \begin{DoxyItemize}
\item {\ttfamily \char`\"{}clicked\char`\"{}} -\/ This is called when a user has clicked the photo without dragging around. \item {\ttfamily \char`\"{}press\char`\"{}} -\/ This is called when a user has pressed down on the photo. \item {\ttfamily \char`\"{}longpressed\char`\"{}} -\/ This is called when a user has pressed down on the photo for a long time without dragging around. \item {\ttfamily \char`\"{}clicked,double\char`\"{}} -\/ This is called when a user has double-\/clicked the photo. \item {\ttfamily \char`\"{}load\char`\"{}} -\/ Photo load begins. \item {\ttfamily \char`\"{}loaded\char`\"{}} -\/ This is called when the image file load is complete for the first view (low resolution blurry version). \item {\ttfamily \char`\"{}load,detail\char`\"{}} -\/ Photo detailed data load begins. \item {\ttfamily \char`\"{}loaded,detail\char`\"{}} -\/ This is called when the image file load is complete for the detailed image data (full resolution needed). \item {\ttfamily \char`\"{}zoom,start\char`\"{}} -\/ Zoom animation started. \item {\ttfamily \char`\"{}zoom,stop\char`\"{}} -\/ Zoom animation stopped. \item {\ttfamily \char`\"{}zoom,change\char`\"{}} -\/ Zoom changed when using an auto zoom mode. \item {\ttfamily \char`\"{}scroll\char`\"{}} -\/ the content has been scrolled (moved) \item {\ttfamily \char`\"{}scroll,anim,start\char`\"{}} -\/ scrolling animation has started \item {\ttfamily \char`\"{}scroll,anim,stop\char`\"{}} -\/ scrolling animation has stopped \item {\ttfamily \char`\"{}scroll,drag,start\char`\"{}} -\/ dragging the contents around has started \item {\ttfamily \char`\"{}scroll,drag,stop\char`\"{}} -\/ dragging the contents around has stopped \item {\ttfamily \char`\"{}focused\char`\"{}} -\/ When the photocam has received focus. (since 1.\+8) \item {\ttfamily \char`\"{}unfocused\char`\"{}} -\/ When the photocam has lost focus. (since 1.\+8)\end{DoxyItemize}
This widget implements the {\bfseries }  elm-\/scrollable-\/interface interface, so that all (non-\/deprecated) functions for the base \hyperlink{group__Scroller}{Scroller} widget also work for photocam objects.

Some calls on the photocam\textquotesingle{}s A\+PI are marked as {\bfseries deprecated}, as they just wrap the scrollable widgets counterpart functions. Use the ones we point you to, for each case of deprecation here, instead -- eventually the deprecated ones will be discarded (next major release).

\hyperlink{tutorial_photocam}{Photocam example} shows the A\+PI in action. 

\subsection{Typedef Documentation}
\index{Photocam@{Photocam}!Elm\+\_\+\+Photocam\+\_\+\+Error@{Elm\+\_\+\+Photocam\+\_\+\+Error}}
\index{Elm\+\_\+\+Photocam\+\_\+\+Error@{Elm\+\_\+\+Photocam\+\_\+\+Error}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{Elm\+\_\+\+Photocam\+\_\+\+Error}{Elm_Photocam_Error}}]{\setlength{\rightskip}{0pt plus 5cm}typedef struct \+\_\+\+Elm\+\_\+\+Photocam\+\_\+\+Error {\bf Elm\+\_\+\+Photocam\+\_\+\+Error}}\label{group__Photocam_ga3ddf6ac3c28775515b59ce9661f2a4b2}


Structre associated with smart callback \textquotesingle{}download,error\textquotesingle{}. 

\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\index{Photocam@{Photocam}!Elm\+\_\+\+Photocam\+\_\+\+Progress@{Elm\+\_\+\+Photocam\+\_\+\+Progress}}
\index{Elm\+\_\+\+Photocam\+\_\+\+Progress@{Elm\+\_\+\+Photocam\+\_\+\+Progress}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{Elm\+\_\+\+Photocam\+\_\+\+Progress}{Elm_Photocam_Progress}}]{\setlength{\rightskip}{0pt plus 5cm}typedef struct \+\_\+\+Elm\+\_\+\+Photocam\+\_\+\+Progress {\bf Elm\+\_\+\+Photocam\+\_\+\+Progress}}\label{group__Photocam_ga53a645d0cb128b12cf858ead33bf28d6}


Structure associated with smart callback \textquotesingle{}download,progress\textquotesingle{}. 

\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}


\subsection{Enumeration Type Documentation}
\index{Photocam@{Photocam}!Elm\+\_\+\+Photocam\+\_\+\+Zoom\+\_\+\+Mode@{Elm\+\_\+\+Photocam\+\_\+\+Zoom\+\_\+\+Mode}}
\index{Elm\+\_\+\+Photocam\+\_\+\+Zoom\+\_\+\+Mode@{Elm\+\_\+\+Photocam\+\_\+\+Zoom\+\_\+\+Mode}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{Elm\+\_\+\+Photocam\+\_\+\+Zoom\+\_\+\+Mode}{Elm_Photocam_Zoom_Mode}}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf Elm\+\_\+\+Photocam\+\_\+\+Zoom\+\_\+\+Mode}}\label{group__Photocam_ga25d5e390032d214f1ee6fb9e5072a7db}


Types of zoom available. 

\begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+M\+A\+N\+U\+AL@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+M\+A\+N\+U\+AL}!Photocam@{Photocam}}\index{Photocam@{Photocam}!E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+M\+A\+N\+U\+AL@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+M\+A\+N\+U\+AL}}\item[{\em 
E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+M\+A\+N\+U\+AL\label{group__Photocam_gga25d5e390032d214f1ee6fb9e5072a7dba737e19ee145bdc310e3cbd1f27e09a29}
}]Zoom controlled normally by elm\+\_\+photocam\+\_\+zoom\+\_\+set. \index{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+IT@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+IT}!Photocam@{Photocam}}\index{Photocam@{Photocam}!E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+IT@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+IT}}\item[{\em 
E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+IT\label{group__Photocam_gga25d5e390032d214f1ee6fb9e5072a7dba43c870b94256e1d35b084e88d2bea161}
}]Zoom until photo fits in photocam. \index{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+LL@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+LL}!Photocam@{Photocam}}\index{Photocam@{Photocam}!E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+LL@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+LL}}\item[{\em 
E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+LL\label{group__Photocam_gga25d5e390032d214f1ee6fb9e5072a7dba3786183c450d12c72bbb38d010cfade9}
}]Zoom until photo fills photocam. \index{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+T\+\_\+\+IN@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+T\+\_\+\+IN}!Photocam@{Photocam}}\index{Photocam@{Photocam}!E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+T\+\_\+\+IN@{E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+T\+\_\+\+IN}}\item[{\em 
E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+T\+\_\+\+IN\label{group__Photocam_gga25d5e390032d214f1ee6fb9e5072a7dba3ccc1d8fef1811f479d2d7bc6dc26f1a}
}]Zoom in until photo fits in photocam. \end{description}
\end{Desc}


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


Add a new Photocam object. 


\begin{DoxyParams}{Parameters}
{\em parent} & The parent object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The new object or N\+U\+LL if it cannot be created 
\end{DoxyReturn}


References elm\+\_\+photocam\+\_\+file\+\_\+get(), elm\+\_\+photocam\+\_\+file\+\_\+set(), E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+LL, E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+IT, E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+A\+U\+T\+O\+\_\+\+F\+I\+T\+\_\+\+IN, and E\+L\+M\+\_\+\+P\+H\+O\+T\+O\+C\+A\+M\+\_\+\+Z\+O\+O\+M\+\_\+\+M\+O\+D\+E\+\_\+\+M\+A\+N\+U\+AL.

\index{Photocam@{Photocam}!elm\+\_\+photocam\+\_\+bounce\+\_\+get@{elm\+\_\+photocam\+\_\+bounce\+\_\+get}}
\index{elm\+\_\+photocam\+\_\+bounce\+\_\+get@{elm\+\_\+photocam\+\_\+bounce\+\_\+get}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{elm\+\_\+photocam\+\_\+bounce\+\_\+get(const Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool $\ast$h\+\_\+bounce, Eina\+\_\+\+Bool $\ast$v\+\_\+bounce)}{elm_photocam_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce)}}]{\setlength{\rightskip}{0pt plus 5cm}E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED void elm\+\_\+photocam\+\_\+bounce\+\_\+get (
\begin{DoxyParamCaption}
\item[{const Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{Eina\+\_\+\+Bool $\ast$}]{h\+\_\+bounce, }
\item[{Eina\+\_\+\+Bool $\ast$}]{v\+\_\+bounce}
\end{DoxyParamCaption}
)}\label{group__Photocam_gaa71330d1d63f3cd0abda5aae6e34ad49}


Get the photocam scrolling bouncing. 


\begin{DoxyParams}{Parameters}
{\em obj} & The photocam object \\
\hline
{\em h\+\_\+bounce} & horizontal bouncing \\
\hline
{\em v\+\_\+bounce} & vertical bouncing\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\hyperlink{group__Photocam_ga8a78fc7400ba30fe324d2a2ffe0a4335}{elm\+\_\+photocam\+\_\+bounce\+\_\+set()}
\end{DoxySeeAlso}
\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000037}{Deprecated}]Use \hyperlink{group__Scroller_gae74537077c42537037834d4d4bdae634}{elm\+\_\+scroller\+\_\+bounce\+\_\+get()} instead.\end{DoxyRefDesc}


References elm\+\_\+gesture\+\_\+layer\+\_\+add(), elm\+\_\+gesture\+\_\+layer\+\_\+attach(), elm\+\_\+gesture\+\_\+layer\+\_\+cb\+\_\+set(), E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+S\+T\+A\+T\+E\+\_\+\+A\+B\+O\+RT, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+S\+T\+A\+T\+E\+\_\+\+E\+ND, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+S\+T\+A\+T\+E\+\_\+\+M\+O\+VE, E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+S\+T\+A\+T\+E\+\_\+\+S\+T\+A\+RT, and E\+L\+M\+\_\+\+G\+E\+S\+T\+U\+R\+E\+\_\+\+Z\+O\+OM.

\index{Photocam@{Photocam}!elm\+\_\+photocam\+\_\+bounce\+\_\+set@{elm\+\_\+photocam\+\_\+bounce\+\_\+set}}
\index{elm\+\_\+photocam\+\_\+bounce\+\_\+set@{elm\+\_\+photocam\+\_\+bounce\+\_\+set}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{elm\+\_\+photocam\+\_\+bounce\+\_\+set(\+Evas\+\_\+\+Object $\ast$obj, Eina\+\_\+\+Bool h\+\_\+bounce, Eina\+\_\+\+Bool v\+\_\+bounce)}{elm_photocam_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce)}}]{\setlength{\rightskip}{0pt plus 5cm}E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED void elm\+\_\+photocam\+\_\+bounce\+\_\+set (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{Eina\+\_\+\+Bool}]{h\+\_\+bounce, }
\item[{Eina\+\_\+\+Bool}]{v\+\_\+bounce}
\end{DoxyParamCaption}
)}\label{group__Photocam_ga8a78fc7400ba30fe324d2a2ffe0a4335}


Set the photocam scrolling bouncing. 


\begin{DoxyParams}{Parameters}
{\em obj} & The photocam object \\
\hline
{\em h\+\_\+bounce} & set this to {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE} for horizontal bouncing \\
\hline
{\em v\+\_\+bounce} & set this to {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+UE} for vertical bouncing\\
\hline
\end{DoxyParams}
\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000036}{Deprecated}]Use \hyperlink{group__Scroller_gae69101dbdb089598ca790c73bd9d7a42}{elm\+\_\+scroller\+\_\+bounce\+\_\+set()} instead.\end{DoxyRefDesc}
\index{Photocam@{Photocam}!elm\+\_\+photocam\+\_\+file\+\_\+get@{elm\+\_\+photocam\+\_\+file\+\_\+get}}
\index{elm\+\_\+photocam\+\_\+file\+\_\+get@{elm\+\_\+photocam\+\_\+file\+\_\+get}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{elm\+\_\+photocam\+\_\+file\+\_\+get(const Evas\+\_\+\+Object $\ast$obj)}{elm_photocam_file_get(const Evas_Object *obj)}}]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ elm\+\_\+photocam\+\_\+file\+\_\+get (
\begin{DoxyParamCaption}
\item[{const Evas\+\_\+\+Object $\ast$}]{obj}
\end{DoxyParamCaption}
)}\label{group__Photocam_ga74507a48aa41f918fc1adb4b55164aed}


Returns the path of the current image file. 

\begin{DoxyReturn}{Returns}
Returns the path
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\hyperlink{group__Photocam_gaa4cb6e360aab7307380ac92de4e04dd2}{elm\+\_\+photocam\+\_\+file\+\_\+set()} 
\end{DoxySeeAlso}


Referenced by elm\+\_\+photocam\+\_\+add().

\index{Photocam@{Photocam}!elm\+\_\+photocam\+\_\+file\+\_\+set@{elm\+\_\+photocam\+\_\+file\+\_\+set}}
\index{elm\+\_\+photocam\+\_\+file\+\_\+set@{elm\+\_\+photocam\+\_\+file\+\_\+set}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{elm\+\_\+photocam\+\_\+file\+\_\+set(\+Evas\+\_\+\+Object $\ast$obj, const char $\ast$file)}{elm_photocam_file_set(Evas_Object *obj, const char *file)}}]{\setlength{\rightskip}{0pt plus 5cm}Evas\+\_\+\+Load\+\_\+\+Error elm\+\_\+photocam\+\_\+file\+\_\+set (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{const char $\ast$}]{file}
\end{DoxyParamCaption}
)}\label{group__Photocam_gaa4cb6e360aab7307380ac92de4e04dd2}


Set the photo file to be shown. 

\begin{DoxyReturn}{Returns}
The return error (see E\+V\+A\+S\+\_\+\+L\+O\+A\+D\+\_\+\+E\+R\+R\+O\+R\+\_\+\+N\+O\+NE, E\+V\+A\+S\+\_\+\+L\+O\+A\+D\+\_\+\+E\+R\+R\+O\+R\+\_\+\+G\+E\+N\+E\+R\+IC etc.)
\end{DoxyReturn}
This sets (and shows) the specified file (with a relative or absolute path) and will return a load error (same error that evas\+\_\+object\+\_\+image\+\_\+load\+\_\+error\+\_\+get() will return). The image will change and adjust its size at this point and begin a background load process for this photo that at some time in the future will be displayed at the full quality needed.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em file} & The photo file \\
\hline
\end{DoxyParams}
\begin{Desc}
\item[Examples\+: ]\par
\hyperlink{photocam_example_01_8c-example}{photocam\+\_\+example\+\_\+01.\+c}.\end{Desc}


Referenced by elm\+\_\+photocam\+\_\+add().

\index{Photocam@{Photocam}!elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in@{elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in}}
\index{elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in@{elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in}!Photocam@{Photocam}}
\subsubsection[{\texorpdfstring{elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in(\+Evas\+\_\+\+Object $\ast$obj, int x, int y, int w, int h)}{elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h)}}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+photocam\+\_\+image\+\_\+region\+\_\+bring\+\_\+in (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{obj, }
\item[{int}]{x, }
\item[{int}]{y, }
\item[{int}]{w, }
\item[{int}]{h}
\end{DoxyParamCaption}
)}\label{group__Photocam_ga51a9dd5b4e7c6593e9734d1838e11266}


Bring in the viewed portion of the image. 


\begin{DoxyParams}{Parameters}
{\em obj} & The photocam object \\
\hline
{\em x} & X-\/coordinate of region in image original pixels \\
\hline
{\em y} & Y-\/coordinate of region in image original pixels \\
\hline
{\em w} & Width of region in image original pixels \\
\hline
{\em h} & Height of region in image original pixels\\
\hline
\end{DoxyParams}
This shows the region of the image using animation. 