\hypertarget{a11856}{}\section{Type\+Qt\+Widget\+Plugin Class Reference}
\label{a11856}\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
Inheritance diagram for Type\+Qt\+Widget\+Plugin\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=1.671642cm]{a11856}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11856_a094a04ca2497ad74fdefa95272240547}\label{a11856_a094a04ca2497ad74fdefa95272240547}} 
Q\+String {\bfseries version} ()
\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11856_a0d34174e456f5ecefec613f95ab24698}\label{a11856_a0d34174e456f5ecefec613f95ab24698}} 
void {\bfseries empty\+Object\+Added} (int \+\_\+id)
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{a11856_a6096b8d037187204e6efdb69bed527a0}{name} ()
\begin{DoxyCompactList}\small\item\em Return a name for the plugin. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a11856_ae61e3947496edb5c0c0f447e2e3fb190}{description} ()
\begin{DoxyCompactList}\small\item\em Return a description of what the plugin is doing. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11856_af4191989264de81b3dd533621e0fd23a}\label{a11856_af4191989264de81b3dd533621e0fd23a}} 
bool {\bfseries register\+Type} ()
\item 
int \hyperlink{a11856_a2ea59d7607a8533e98321e50444bd731}{add\+Empty} ()
\begin{DoxyCompactList}\small\item\em Create an empty object. \end{DoxyCompactList}\item 
\hyperlink{a07048}{Data\+Type} \hyperlink{a11856_a01d6038d83d0dd327812ff61e060e7d2}{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\+SH ) \end{DoxyCompactList}\item 
void \hyperlink{a11856_a3ea0ae14bcbccab7f5821be6cbbea054}{slot\+Mouse\+Event} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Mouse Event from main application ( Picking Mode ) \end{DoxyCompactList}\item 
void \hyperlink{a11856_ac207dfa91f9af432462bd489bf2bec09}{object\+Deleted} (int \+\_\+id)
\begin{DoxyCompactList}\small\item\em An object was deleted. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11856_abb9d6e294c73e338dd18ecaec944106d}\label{a11856_abb9d6e294c73e338dd18ecaec944106d}} 
void {\bfseries nogui\+Supported} ()
\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11856_afebbc1596940f89a3bd1d81e525c2025}\label{a11856_afebbc1596940f89a3bd1d81e525c2025}} 
void {\bfseries pass\+Mouse\+Events} (Q\+Mouse\+Event $\ast$\+\_\+event)
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11856_a80c53cfa78d5fca229390063afae1ddd}\label{a11856_a80c53cfa78d5fca229390063afae1ddd}} 
std\+::map$<$ int, \hyperlink{a11852}{Qt\+Widget\+Object} $\ast$ $>$ {\bfseries widgets\+\_\+}
\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 60 of file Type\+Qt\+Widget.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a11856_a2ea59d7607a8533e98321e50444bd731}\label{a11856_a2ea59d7607a8533e98321e50444bd731}} 
\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}!add\+Empty@{add\+Empty}}
\index{add\+Empty@{add\+Empty}!Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
\subsubsection{\texorpdfstring{add\+Empty()}{addEmpty()}}
{\footnotesize\ttfamily int Type\+Qt\+Widget\+Plugin\+::add\+Empty (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Create an empty object. 

When this slot is called you have to create an object of your supported type. \begin{DoxyReturn}{Returns}
Id of the new Object 
\end{DoxyReturn}


Implements \hyperlink{a07012_a50b2bfa5db5ff3ce6f3e8cc8e40260f0}{Type\+Interface}.



Definition at line 61 of file Type\+Qt\+Widget.\+cc.

\mbox{\Hypertarget{a11856_ae61e3947496edb5c0c0f447e2e3fb190}\label{a11856_ae61e3947496edb5c0c0f447e2e3fb190}} 
\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}!description@{description}}
\index{description@{description}!Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
\subsubsection{\texorpdfstring{description()}{description()}}
{\footnotesize\ttfamily Q\+String Type\+Qt\+Widget\+Plugin\+::description (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return a description of what the plugin is doing. 

This function has to return a basic description of the plugin 

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



Definition at line 88 of file Type\+Qt\+Widget.\+hh.

\mbox{\Hypertarget{a11856_a6096b8d037187204e6efdb69bed527a0}\label{a11856_a6096b8d037187204e6efdb69bed527a0}} 
\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}!name@{name}}
\index{name@{name}!Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
\subsubsection{\texorpdfstring{name()}{name()}}
{\footnotesize\ttfamily Q\+String Type\+Qt\+Widget\+Plugin\+::name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return a name for the plugin. 

This Function has to return the name of the plugin. 

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



Definition at line 87 of file Type\+Qt\+Widget.\+hh.

\mbox{\Hypertarget{a11856_ac207dfa91f9af432462bd489bf2bec09}\label{a11856_ac207dfa91f9af432462bd489bf2bec09}} 
\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}!object\+Deleted@{object\+Deleted}}
\index{object\+Deleted@{object\+Deleted}!Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
\subsubsection{\texorpdfstring{object\+Deleted()}{objectDeleted()}}
{\footnotesize\ttfamily void Type\+Qt\+Widget\+Plugin\+::object\+Deleted (\begin{DoxyParamCaption}\item[{int}]{\+\_\+id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



An object was deleted. 

This function is called by the core if an object gets deleted. It is called immediately before the object is removed from the scenegraph. So if this function is invoked, the object still exists. All plugins get informed via this slot.\textbackslash{}

After this function got called for all plugins, the object is removed from the scene with all nodes attached to it and all \hyperlink{a07072}{Per\+Object\+Data} attached to it.~\newline
 This slot will be executed on the main thread.


\begin{DoxyParams}{Parameters}
{\em \+\_\+id} & Id of the object that is deleted. \\
\hline
\end{DoxyParams}


Reimplemented from \hyperlink{a06896_a0ab70c4ae3c08f298ecefa58f0bb8b2f}{Load\+Save\+Interface}.



Definition at line 92 of file Type\+Qt\+Widget.\+cc.

\mbox{\Hypertarget{a11856_a3ea0ae14bcbccab7f5821be6cbbea054}\label{a11856_a3ea0ae14bcbccab7f5821be6cbbea054}} 
\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}!slot\+Mouse\+Event@{slot\+Mouse\+Event}}
\index{slot\+Mouse\+Event@{slot\+Mouse\+Event}!Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
\subsubsection{\texorpdfstring{slot\+Mouse\+Event()}{slotMouseEvent()}}
{\footnotesize\ttfamily void Type\+Qt\+Widget\+Plugin\+::slot\+Mouse\+Event (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Mouse Event from main application ( Picking Mode ) 

This slot is called if a mouse event occurred in the Viewer This slot will only get called in picking\+Mode. Right button clicks will not be passed to the plugins as this is reserved for the context \hyperlink{a10084}{Menu}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & Mouse event \\
\hline
\end{DoxyParams}


Reimplemented from \hyperlink{a06912_ad998de7699f7f6ea0e60de3ba5a5503d}{Mouse\+Interface}.



Definition at line 81 of file Type\+Qt\+Widget.\+cc.

\mbox{\Hypertarget{a11856_a01d6038d83d0dd327812ff61e060e7d2}\label{a11856_a01d6038d83d0dd327812ff61e060e7d2}} 
\index{Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}!supported\+Type@{supported\+Type}}
\index{supported\+Type@{supported\+Type}!Type\+Qt\+Widget\+Plugin@{Type\+Qt\+Widget\+Plugin}}
\subsubsection{\texorpdfstring{supported\+Type()}{supportedType()}}
{\footnotesize\ttfamily \hyperlink{a07048}{Data\+Type} Type\+Qt\+Widget\+Plugin\+::supported\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



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

The function is used from add\+Empty in the core to check if your plugin can create an object of a given data\+Type. If so, your add\+Empty function will be invoked to create it. 

Implements \hyperlink{a07012_a05736f72d3220fbd4152e902b0fa7756}{Type\+Interface}.



Definition at line 99 of file Type\+Qt\+Widget.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Type-\/\+Qt\+Widget/\+Plugin-\/\+Type\+Qt\+Widget/Type\+Qt\+Widget.\+hh\item 
Type-\/\+Qt\+Widget/\+Plugin-\/\+Type\+Qt\+Widget/Type\+Qt\+Widget.\+cc\end{DoxyCompactItemize}
