\section{Photo}
\label{group__Photo}\index{Photo@{Photo}}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
E\+O\+A\+P\+I void \hyperlink{group__Photo_gad9c5fba98b04521a30e2ecd7b7f649be}{elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set} (Eina\+\_\+\+Bool fill)
\begin{DoxyCompactList}\small\item\em Set if the photo should be completely visible or not. \end{DoxyCompactList}\item 
E\+O\+A\+P\+I void \hyperlink{group__Photo_ga83c1a3a7063f6fc86072322b4f3f8737}{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set} (Eina\+\_\+\+Bool fixed)
\begin{DoxyCompactList}\small\item\em Set whether the original aspect ratio of the photo should be kept on resize. \end{DoxyCompactList}\item 
E\+O\+A\+P\+I Eina\+\_\+\+Bool \hyperlink{group__Photo_ga85e7b8c6e10c2e4e85068bea0f8ab0c1}{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get} (void)
\begin{DoxyCompactList}\small\item\em Get if the object keeps the original aspect ratio. \end{DoxyCompactList}\item 
E\+O\+A\+P\+I void \hyperlink{group__Photo_ga3abfdb8e4dfd726094a0e655559fcd90}{elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set} (int size)
\begin{DoxyCompactList}\small\item\em Set the size that will be used on the photo. \end{DoxyCompactList}\item 
E\+O\+A\+P\+I void \hyperlink{group__Photo_ga71536436bc3fe90cc135a8f2be4bb5c5}{elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set} (const char $\ast$file, const char $\ast$group)
\begin{DoxyCompactList}\small\item\em Set the file that will be used as thumbnail in the photo. \end{DoxyCompactList}\item 
void \hyperlink{group__Photo_gafa88181a3d9e6e7f172fa6e3c51a6061}{elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set} (Elm\+\_\+\+Photo $\ast$obj, Eina\+\_\+\+Bool fill)
\begin{DoxyCompactList}\small\item\em Set if the photo should be completely visible or not. \end{DoxyCompactList}\item 
void \hyperlink{group__Photo_ga9b0250bb9a73f9f5390cb8262ff87f86}{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set} (Elm\+\_\+\+Photo $\ast$obj, Eina\+\_\+\+Bool fixed)
\begin{DoxyCompactList}\small\item\em Set whether the original aspect ratio of the photo should be kept on resize. \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool \hyperlink{group__Photo_ga5985efda0e00c557af5f2a0babd1787b}{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get} (const Elm\+\_\+\+Photo $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get if the object keeps the original aspect ratio. \end{DoxyCompactList}\item 
void \hyperlink{group__Photo_gabb84489ec2b986df5b87d288c8aed54d}{elm\+\_\+photo\+\_\+size\+\_\+set} (Elm\+\_\+\+Photo $\ast$obj, int size)
\begin{DoxyCompactList}\small\item\em Set the size that will be used on the photo. \end{DoxyCompactList}\item 
void \hyperlink{group__Photo_gadd8ec9ea5bc138b4daeaac8b4bc2e62e}{elm\+\_\+photo\+\_\+thumb\+\_\+set} (const Elm\+\_\+\+Photo $\ast$obj, const char $\ast$file, const char $\ast$group)
\begin{DoxyCompactList}\small\item\em Set the file that will be used as thumbnail in the photo. \end{DoxyCompactList}\item 
Evas\+\_\+\+Object $\ast$ \hyperlink{group__Photo_ga7e50794931945a9e9e301f2ccf040a15}{elm\+\_\+photo\+\_\+add} (Evas\+\_\+\+Object $\ast$parent)
\begin{DoxyCompactList}\small\item\em Add a new photo to the parent. \end{DoxyCompactList}\item 
Eina\+\_\+\+Bool \hyperlink{group__Photo_ga697500daaa458b968f26f3584168bbc5}{elm\+\_\+photo\+\_\+file\+\_\+set} (Eo $\ast$obj, const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Set the file that will be used as the photo widget\textquotesingle{}s image. \end{DoxyCompactList}\end{DoxyCompactItemize}


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


The Elementary photo widget is intended for displaying a photo, for ex., a person\textquotesingle{}s image (contact). Simple, yet with a very specific purpose. It has a decorative frame around the inner image itself, on the default theme. If and while no photo is set on it, it displays a person icon, indicating it\textquotesingle{}s a photo placeholder.

This widget relies on an internal \hyperlink{group__Icon}{Icon}, so that the A\+P\+Is of these two widgets are similar (drag and drop is also possible here, for example).

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
\item {\ttfamily \char`\"{}drag,start\char`\"{}} -\/ One has started dragging the inner image out of the photo\textquotesingle{}s frame
\item {\ttfamily \char`\"{}drag,end\char`\"{}} -\/ One has dropped the dragged image somewhere 
\end{DoxyItemize}

\subsection{Function Documentation}
\index{Photo@{Photo}!elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get@{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get}}
\index{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get@{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get}!Photo@{Photo}}
\subsubsection[{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}E\+O\+A\+P\+I Eina\+\_\+\+Bool elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}\label{group__Photo_ga85e7b8c6e10c2e4e85068bea0f8ab0c1}


Get if the object keeps the original aspect ratio. 

\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} if the object keeps the original aspect, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise. 
\end{DoxyReturn}


Referenced by elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get().

\index{Photo@{Photo}!elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set}}
\index{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}E\+O\+A\+P\+I void elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set (
\begin{DoxyParamCaption}
\item[{Eina\+\_\+\+Bool}]{fixed}
\end{DoxyParamCaption}
)}\label{group__Photo_ga83c1a3a7063f6fc86072322b4f3f8737}


Set whether the original aspect ratio of the photo should be kept on resize. 

The original aspect ratio (width / height) of the photo is usually distorted to match the object\textquotesingle{}s size. Enabling this option will fix this original aspect, and the way that the photo is fit into the object\textquotesingle{}s area

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Photo_ga5985efda0e00c557af5f2a0babd1787b}{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get()}
\end{DoxySeeAlso}

\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em fixed} & {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} if the photo should fix the aspect, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise. \\
\hline
\end{DoxyParams}


Referenced by elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set}}
\index{elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}E\+O\+A\+P\+I void elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set (
\begin{DoxyParamCaption}
\item[{Eina\+\_\+\+Bool}]{fill}
\end{DoxyParamCaption}
)}\label{group__Photo_gad9c5fba98b04521a30e2ecd7b7f649be}


Set if the photo should be completely visible or not. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em fill} & if true the photo will be completely visible \\
\hline
\end{DoxyParams}


Referenced by elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set}}
\index{elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}E\+O\+A\+P\+I void elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set (
\begin{DoxyParamCaption}
\item[{int}]{size}
\end{DoxyParamCaption}
)}\label{group__Photo_ga3abfdb8e4dfd726094a0e655559fcd90}


Set the size that will be used on the photo. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em size} & The size of the photo \\
\hline
\end{DoxyParams}


Referenced by elm\+\_\+photo\+\_\+size\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set}}
\index{elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set@{elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}E\+O\+A\+P\+I void elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{file, }
\item[{const char $\ast$}]{group}
\end{DoxyParamCaption}
)}\label{group__Photo_ga71536436bc3fe90cc135a8f2be4bb5c5}


Set the file that will be used as thumbnail in the photo. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em file} & The path to file that will be used as thumbnail. \\
\hline
\mbox{\tt in}  & {\em group} & The key used in case of an E\+E\+T file. \\
\hline
\end{DoxyParams}


Referenced by elm\+\_\+photo\+\_\+thumb\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+photo\+\_\+add@{elm\+\_\+photo\+\_\+add}}
\index{elm\+\_\+photo\+\_\+add@{elm\+\_\+photo\+\_\+add}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+add}]{\setlength{\rightskip}{0pt plus 5cm}Evas\+\_\+\+Object$\ast$ elm\+\_\+photo\+\_\+add (
\begin{DoxyParamCaption}
\item[{Evas\+\_\+\+Object $\ast$}]{parent}
\end{DoxyParamCaption}
)}\label{group__Photo_ga7e50794931945a9e9e301f2ccf040a15}


Add a new photo to the parent. 


\begin{DoxyParams}{Parameters}
{\em parent} & The parent object \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The new object or N\+U\+L\+L if it cannot be created 
\end{DoxyReturn}
\index{Photo@{Photo}!elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get@{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get}}
\index{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get@{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}Eina\+\_\+\+Bool elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get (
\begin{DoxyParamCaption}
\item[{const Elm\+\_\+\+Photo $\ast$}]{obj}
\end{DoxyParamCaption}
)}\label{group__Photo_ga5985efda0e00c557af5f2a0babd1787b}


Get if the object keeps the original aspect ratio. 

\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} if the object keeps the original aspect, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise. 
\end{DoxyReturn}


References elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get().

\index{Photo@{Photo}!elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set@{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set}}
\index{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set@{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set (
\begin{DoxyParamCaption}
\item[{Elm\+\_\+\+Photo $\ast$}]{obj, }
\item[{Eina\+\_\+\+Bool}]{fixed}
\end{DoxyParamCaption}
)}\label{group__Photo_ga9b0250bb9a73f9f5390cb8262ff87f86}


Set whether the original aspect ratio of the photo should be kept on resize. 

The original aspect ratio (width / height) of the photo is usually distorted to match the object\textquotesingle{}s size. Enabling this option will fix this original aspect, and the way that the photo is fit into the object\textquotesingle{}s area

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Photo_ga5985efda0e00c557af5f2a0babd1787b}{elm\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+get()}
\end{DoxySeeAlso}

\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em fixed} & {\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} if the photo should fix the aspect, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise. \\
\hline
\end{DoxyParams}


References elm\+\_\+obj\+\_\+photo\+\_\+aspect\+\_\+fixed\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+photo\+\_\+file\+\_\+set@{elm\+\_\+photo\+\_\+file\+\_\+set}}
\index{elm\+\_\+photo\+\_\+file\+\_\+set@{elm\+\_\+photo\+\_\+file\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+file\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}Eina\+\_\+\+Bool elm\+\_\+photo\+\_\+file\+\_\+set (
\begin{DoxyParamCaption}
\item[{Eo $\ast$}]{obj, }
\item[{const char $\ast$}]{file}
\end{DoxyParamCaption}
)}\label{group__Photo_ga697500daaa458b968f26f3584168bbc5}


Set the file that will be used as the photo widget\textquotesingle{}s image. 

\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} on success, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise
\end{DoxyReturn}
\begin{DoxyNote}{Note}
Use {\ttfamily N\+U\+L\+L} on {\itshape file} to set the photo widget back to it\textquotesingle{}s initial state, which indicates \char`\"{}no photo\char`\"{}.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em file} & The path to file that will be used as {\itshape obj\textquotesingle{}s} image. \\
\hline
\end{DoxyParams}
\index{Photo@{Photo}!elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set@{elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set}}
\index{elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set@{elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set (
\begin{DoxyParamCaption}
\item[{Elm\+\_\+\+Photo $\ast$}]{obj, }
\item[{Eina\+\_\+\+Bool}]{fill}
\end{DoxyParamCaption}
)}\label{group__Photo_gafa88181a3d9e6e7f172fa6e3c51a6061}


Set if the photo should be completely visible or not. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em fill} & if true the photo will be completely visible \\
\hline
\end{DoxyParams}


References elm\+\_\+obj\+\_\+photo\+\_\+fill\+\_\+inside\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+photo\+\_\+size\+\_\+set@{elm\+\_\+photo\+\_\+size\+\_\+set}}
\index{elm\+\_\+photo\+\_\+size\+\_\+set@{elm\+\_\+photo\+\_\+size\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+size\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+photo\+\_\+size\+\_\+set (
\begin{DoxyParamCaption}
\item[{Elm\+\_\+\+Photo $\ast$}]{obj, }
\item[{int}]{size}
\end{DoxyParamCaption}
)}\label{group__Photo_gabb84489ec2b986df5b87d288c8aed54d}


Set the size that will be used on the photo. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em size} & The size of the photo \\
\hline
\end{DoxyParams}


References elm\+\_\+obj\+\_\+photo\+\_\+size\+\_\+set().

\index{Photo@{Photo}!elm\+\_\+photo\+\_\+thumb\+\_\+set@{elm\+\_\+photo\+\_\+thumb\+\_\+set}}
\index{elm\+\_\+photo\+\_\+thumb\+\_\+set@{elm\+\_\+photo\+\_\+thumb\+\_\+set}!Photo@{Photo}}
\subsubsection[{elm\+\_\+photo\+\_\+thumb\+\_\+set}]{\setlength{\rightskip}{0pt plus 5cm}void elm\+\_\+photo\+\_\+thumb\+\_\+set (
\begin{DoxyParamCaption}
\item[{const Elm\+\_\+\+Photo $\ast$}]{obj, }
\item[{const char $\ast$}]{file, }
\item[{const char $\ast$}]{group}
\end{DoxyParamCaption}
)}\label{group__Photo_gadd8ec9ea5bc138b4daeaac8b4bc2e62e}


Set the file that will be used as thumbnail in the photo. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em file} & The path to file that will be used as thumbnail. \\
\hline
\mbox{\tt in}  & {\em group} & The key used in case of an E\+E\+T file. \\
\hline
\end{DoxyParams}


References elm\+\_\+obj\+\_\+photo\+\_\+thumb\+\_\+set().

