\hypertarget{a00569}{\section{File\+Height\+Field\+P\+N\+G\+Plugin Class Reference}
\label{a00569}\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
}
Inheritance diagram for File\+Height\+Field\+P\+N\+G\+Plugin\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=1.349398cm]{a00569}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00569_a048347715c1bc6e01de5783bc01ce594}{int {\bfseries load\+Object} (Q\+String \+\_\+filename)}\label{a00569_a048347715c1bc6e01de5783bc01ce594}

\item 
\hypertarget{a00569_af814385579e31d32730d80b66436a646}{bool {\bfseries save\+Object} (int \+\_\+id, Q\+String \+\_\+filename)}\label{a00569_af814385579e31d32730d80b66436a646}

\item 
\hypertarget{a00569_a4f686a63137d266b7a0066aac8c4ea4d}{Q\+String {\bfseries version} ()}\label{a00569_a4f686a63137d266b7a0066aac8c4ea4d}

\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00569_a850cfa8ecc3a6d537559bdfa326bb08e}{void {\bfseries opened\+File} (int \+\_\+id)}\label{a00569_a850cfa8ecc3a6d537559bdfa326bb08e}

\item 
\hypertarget{a00569_a140b808013f9bdb11a284dabb20448f1}{void {\bfseries add\+Empty\+Object} (\hyperlink{a00477}{Data\+Type} \+\_\+type, int \&\+\_\+id)}\label{a00569_a140b808013f9bdb11a284dabb20448f1}

\item 
\hypertarget{a00569_ae5c02de6aa5b4b72b7fde161b4295e69}{void {\bfseries load} (Q\+String \+\_\+filename, \hyperlink{a00477}{Data\+Type} \+\_\+type, int \&\+\_\+id)}\label{a00569_ae5c02de6aa5b4b72b7fde161b4295e69}

\item 
\hypertarget{a00569_a0d093ded39e8ff5e4850ed8b531166c6}{void {\bfseries save} (int \+\_\+id, Q\+String \+\_\+filename)}\label{a00569_a0d093ded39e8ff5e4850ed8b531166c6}

\item 
\hypertarget{a00569_af54aa6558a11f68bff4e550ba0fe4b17}{void {\bfseries log} (\hyperlink{a02444_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)}\label{a00569_af54aa6558a11f68bff4e550ba0fe4b17}

\item 
\hypertarget{a00569_a5ef990997df337459fd3ebcb8401be42}{void {\bfseries log} (Q\+String \+\_\+message)}\label{a00569_a5ef990997df337459fd3ebcb8401be42}

\item 
\hypertarget{a00569_a8d77d6ed0afda5a74c6589ca714f3585}{void {\bfseries updated\+Object} (int \+\_\+identifier, const \hyperlink{a01393}{Update\+Type} \&\+\_\+type)}\label{a00569_a8d77d6ed0afda5a74c6589ca714f3585}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{a00569_a43a69a97562cbac0194464c538de65fe}{name} ()
\begin{DoxyCompactList}\small\item\em Return a name for the plugin. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a00569_a38c3831ec0144ecd1f1972b1e3e6df52}{description} ()
\begin{DoxyCompactList}\small\item\em Return a description of what the plugin is doing. \end{DoxyCompactList}\item 
\hyperlink{a00477}{Data\+Type} \hyperlink{a00569_ad6b4483c6fdf16b6ab48929d25815bb4}{supported\+Type} ()
\begin{DoxyCompactList}\small\item\em Return your supported object type( e.\+g. D\+A\+T\+A\+\_\+\+T\+R\+I\+A\+N\+G\+L\+E\+\_\+\+M\+E\+S\+H ) \end{DoxyCompactList}\item 
Q\+String \hyperlink{a00569_a9906f8a1f8b8a01b0f2f685f35b66e98}{get\+Save\+Filters} ()
\item 
Q\+String \hyperlink{a00569_a64f2e4edb804a80e66f9c515c5b4f141}{get\+Load\+Filters} ()
\item 
Q\+Widget $\ast$ \hyperlink{a00569_a29f48a2341e5499f4437e90ed9159499}{save\+Options\+Widget} (Q\+String)
\item 
Q\+Widget $\ast$ \hyperlink{a00569_ab1c5ce64713f509d334ed207ac142a5f}{load\+Options\+Widget} (Q\+String)
\end{DoxyCompactItemize}
\subsection*{Private Slots}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00569_a6ce59abdc4cb1ae5548b130e134e78f4}{void {\bfseries file\+Opened} (int)}\label{a00569_a6ce59abdc4cb1ae5548b130e134e78f4}

\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00569_a8c179632822b8553bdcfba46fb78ffa3}{nogui\+Supported} ()
\item 
void \hyperlink{a00569_acf44d435c35513f8a91b58c3be389777}{initialize\+Plugin} ()
\begin{DoxyCompactList}\small\item\em Initialize Plugin. \end{DoxyCompactList}\item 
\hypertarget{a00569_a625e6a71d6de810d332e5a4908c35777}{bool {\bfseries show\+Image\+Dialog} (const Q\+Image \&\+\_\+image, int $\ast$min\+X, int $\ast$max\+X, int $\ast$min\+Y, int $\ast$max\+Y, double $\ast$height)}\label{a00569_a625e6a71d6de810d332e5a4908c35777}

\item 
\hypertarget{a00569_a1f792d1db1d4b2e70effe9e8b3a9acff}{void {\bfseries load\+Image\+As\+Triangle\+Mesh} (Q\+Image \&\+\_\+image, \hyperlink{a02425_a41cbba34c91d41c5325cc019b097ad91}{Tri\+Mesh} $\ast$\+\_\+mesh, int \+\_\+min\+X, int \+\_\+max\+X, int \+\_\+min\+Y, int \+\_\+max\+Y, double \+\_\+height)}\label{a00569_a1f792d1db1d4b2e70effe9e8b3a9acff}

\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 59 of file File\+Height\+Field\+Image.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a00569_a38c3831ec0144ecd1f1972b1e3e6df52}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!description@{description}}
\index{description@{description}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{description}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String File\+Height\+Field\+P\+N\+G\+Plugin\+::description (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00569_a38c3831ec0144ecd1f1972b1e3e6df52}


Return a description of what the plugin is doing. 

This function has to return a basic description of the plugin 

Implements \hyperlink{a00322_a43f0d3612695b53c848c14f48fea9a7a}{Base\+Interface}.



Definition at line 95 of file File\+Height\+Field\+Image.\+hh.

\hypertarget{a00569_a64f2e4edb804a80e66f9c515c5b4f141}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!get\+Load\+Filters@{get\+Load\+Filters}}
\index{get\+Load\+Filters@{get\+Load\+Filters}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{get\+Load\+Filters}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String File\+Height\+Field\+P\+N\+G\+Plugin\+::get\+Load\+Filters (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00569_a64f2e4edb804a80e66f9c515c5b4f141}
Return the Qt Filters for File dialogs when loading files (e.\+g. \char`\"{}\+Off files ( $\ast$.\+off )\char`\"{} ) 

Implements \hyperlink{a00570_a804009a394ded7436b43c624af9cc44d}{File\+Interface}.



Definition at line 61 of file File\+Height\+Field\+Image.\+cc.

\hypertarget{a00569_a9906f8a1f8b8a01b0f2f685f35b66e98}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!get\+Save\+Filters@{get\+Save\+Filters}}
\index{get\+Save\+Filters@{get\+Save\+Filters}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{get\+Save\+Filters}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String File\+Height\+Field\+P\+N\+G\+Plugin\+::get\+Save\+Filters (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00569_a9906f8a1f8b8a01b0f2f685f35b66e98}
Get the Qt Filters for Filedialogs when saving files (e.\+g. \char`\"{}\+Off files ( $\ast$.\+off )\char`\"{} ) 

Implements \hyperlink{a00570_a86b79f14fef9913720c6456df43de7df}{File\+Interface}.



Definition at line 84 of file File\+Height\+Field\+Image.\+cc.

\hypertarget{a00569_acf44d435c35513f8a91b58c3be389777}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!initialize\+Plugin@{initialize\+Plugin}}
\index{initialize\+Plugin@{initialize\+Plugin}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{initialize\+Plugin}]{\setlength{\rightskip}{0pt plus 5cm}void File\+Height\+Field\+P\+N\+G\+Plugin\+::initialize\+Plugin (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [virtual]}}}\label{a00569_acf44d435c35513f8a91b58c3be389777}


Initialize Plugin. 

This slot is called if the plugin is loaded and has to be initialized. All initialization stuff in this slot has to stay inside the plugin, no external signals are allowed here (and will be ignored). Don't create any objects via \hyperlink{a03393}{Plugin\+Functions} here. Use the \hyperlink{a00322_a5f240478907447bf172618bd4205df65}{plugins\+Initialized()} slot for external initialization. After execution of this slot your plugin should be fully functional. Only gui elements may be uninitialized and should be created in \hyperlink{a00322_a5f240478907447bf172618bd4205df65}{plugins\+Initialized()}. 

Reimplemented from \hyperlink{a00322_a705fdf2e221af47198aed689b0da7a32}{Base\+Interface}.



Definition at line 58 of file File\+Height\+Field\+Image.\+cc.

\hypertarget{a00569_ab1c5ce64713f509d334ed207ac142a5f}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!load\+Options\+Widget@{load\+Options\+Widget}}
\index{load\+Options\+Widget@{load\+Options\+Widget}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{load\+Options\+Widget}]{\setlength{\rightskip}{0pt plus 5cm}Q\+Widget$\ast$ File\+Height\+Field\+P\+N\+G\+Plugin\+::load\+Options\+Widget (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+current\+Filter}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00569_ab1c5ce64713f509d334ed207ac142a5f}
You can provide a special widget showing options for loading your file types depending on the current filter

\+\_\+current\+Filter\+: one filter from load\+Filters

Return 0 when you don't need one 

Implements \hyperlink{a00570_a69ddbb8db7fd5b9257f35bc0148ef7c0}{File\+Interface}.



Definition at line 103 of file File\+Height\+Field\+Image.\+hh.

\hypertarget{a00569_a43a69a97562cbac0194464c538de65fe}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!name@{name}}
\index{name@{name}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{name}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String File\+Height\+Field\+P\+N\+G\+Plugin\+::name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00569_a43a69a97562cbac0194464c538de65fe}


Return a name for the plugin. 

This Function has to return the name of the plugin. 

Implements \hyperlink{a00322_a2b351aa6ef0eb368bce735e243235958}{Base\+Interface}.



Definition at line 94 of file File\+Height\+Field\+Image.\+hh.

\hypertarget{a00569_a8c179632822b8553bdcfba46fb78ffa3}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!nogui\+Supported@{nogui\+Supported}}
\index{nogui\+Supported@{nogui\+Supported}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{nogui\+Supported}]{\setlength{\rightskip}{0pt plus 5cm}void File\+Height\+Field\+P\+N\+G\+Plugin\+::nogui\+Supported (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [private]}, {\ttfamily [virtual]}}}\label{a00569_a8c179632822b8553bdcfba46fb78ffa3}
Using this function you can inform the core that your plugin can run without creating a widget. If your plugin does not implement this function, it will not be loaded in scripting mode without gui. You don't have to do anything in this function. 

Reimplemented from \hyperlink{a00322_a79ba17f1f9aca08b95ec56f85d2d1204}{Base\+Interface}.



Definition at line 84 of file File\+Height\+Field\+Image.\+hh.

\hypertarget{a00569_a29f48a2341e5499f4437e90ed9159499}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!save\+Options\+Widget@{save\+Options\+Widget}}
\index{save\+Options\+Widget@{save\+Options\+Widget}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{save\+Options\+Widget}]{\setlength{\rightskip}{0pt plus 5cm}Q\+Widget$\ast$ File\+Height\+Field\+P\+N\+G\+Plugin\+::save\+Options\+Widget (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+current\+Filter}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00569_a29f48a2341e5499f4437e90ed9159499}
You can provide a special widget showing options for saving your file types depending on the current filter

\+\_\+current\+Filter\+: one filter from save\+Filters

Return 0 when you don't need one 

Implements \hyperlink{a00570_a5cfabe9faa5b3e9f107766a6b670626b}{File\+Interface}.



Definition at line 102 of file File\+Height\+Field\+Image.\+hh.

\hypertarget{a00569_ad6b4483c6fdf16b6ab48929d25815bb4}{\index{File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}!supported\+Type@{supported\+Type}}
\index{supported\+Type@{supported\+Type}!File\+Height\+Field\+P\+N\+G\+Plugin@{File\+Height\+Field\+P\+N\+G\+Plugin}}
\subsubsection[{supported\+Type}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Data\+Type} File\+Height\+Field\+P\+N\+G\+Plugin\+::supported\+Type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00569_ad6b4483c6fdf16b6ab48929d25815bb4}


Return your supported object type( e.\+g. D\+A\+T\+A\+\_\+\+T\+R\+I\+A\+N\+G\+L\+E\+\_\+\+M\+E\+S\+H ) 

If you support multiple Data\+Types you can combine them bitwise here. The function is used from the load and save code to check if your plugin can handle an object of a given data\+Type. 

Implements \hyperlink{a00570_add81abf9277dae44167763da4371fb28}{File\+Interface}.



Definition at line 88 of file File\+Height\+Field\+Image.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Plugin\+Collection-\/\+File\+Plugins/\+Plugin-\/\+File\+Height\+Field\+Image/File\+Height\+Field\+Image.\+hh\item 
Plugin\+Collection-\/\+File\+Plugins/\+Plugin-\/\+File\+Height\+Field\+Image/File\+Height\+Field\+Image.\+cc\end{DoxyCompactItemize}
