\hypertarget{a00968}{\section{Plugin\+Connection\+Interface Class Reference}
\label{a00968}\index{Plugin\+Connection\+Interface@{Plugin\+Connection\+Interface}}
}


Allow to connect slots between plugins.  




{\ttfamily \#include $<$Open\+Flipper/\+Base\+Plugin/\+Plugin\+Connection\+Interface.\+hh$>$}

\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{a00968_a65490b442efd113de4a65b1e9118ed7d}{cross\+Plugin\+Connect} (Q\+String, const char $\ast$, Q\+String, const char $\ast$)
\begin{DoxyCompactList}\small\item\em connect signals and slots of plugins across plugins \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00968_a0b60128301e10545424c407a2a97cca2}{virtual \hyperlink{a00968_a0b60128301e10545424c407a2a97cca2}{$\sim$\+Plugin\+Connection\+Interface} ()}\label{a00968_a0b60128301e10545424c407a2a97cca2}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Allow to connect slots between plugins. 

\hyperlink{pluginConnectionInterfacePage}{Detailed description} ~\newline
 Interface Class which allows to connect signals and slots across plugins

~\newline
 {\bfseries  W\+A\+R\+N\+I\+N\+G! Never connect S\+I\+G\+N\+A\+L\+S and S\+L\+O\+T\+S which are already defined in the Interfaces!! W\+A\+R\+N\+I\+N\+G! } ~\newline
 This might result in endless loops and breaks Open\+Flippers control loops. You have to keep track of your connections yourself. If you call slots which call updated\+Oject which in turn call your original slot you get a loop and Open\+Flipper is not responsible for your endless loops! Be careful! 

Definition at line 77 of file Plugin\+Connection\+Interface.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a00968_a65490b442efd113de4a65b1e9118ed7d}{\index{Plugin\+Connection\+Interface@{Plugin\+Connection\+Interface}!cross\+Plugin\+Connect@{cross\+Plugin\+Connect}}
\index{cross\+Plugin\+Connect@{cross\+Plugin\+Connect}!Plugin\+Connection\+Interface@{Plugin\+Connection\+Interface}}
\subsubsection[{cross\+Plugin\+Connect}]{\setlength{\rightskip}{0pt plus 5cm}virtual void Plugin\+Connection\+Interface\+::cross\+Plugin\+Connect (
\begin{DoxyParamCaption}
\item[{Q\+String}]{, }
\item[{const char $\ast$}]{, }
\item[{Q\+String}]{, }
\item[{const char $\ast$}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}, {\ttfamily [signal]}}}\label{a00968_a65490b442efd113de4a65b1e9118ed7d}


connect signals and slots of plugins across plugins 

Connect a signal of one plugin to another plugin by its scripting name. \+\_\+plugin\+Name1 is the scripting name of the plugin containing the signal ( Use script editor to check that name) \+\_\+signal is the signal name. Use it like with regular connect ( {\ttfamily S\+I\+G\+N\+A\+L(...)} ) macro \+\_\+plugin\+Name2 is the scripting name of the plugin containing a slot \+\_\+slot is the slot name. Use it like with regular connect ( {\ttfamily S\+L\+O\+T(...)} ) macro 

Definition at line 89 of file Plugin\+Connection\+Interface.\+hh.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/\+Base\+Plugin/\hyperlink{a02450}{Plugin\+Connection\+Interface.\+hh}\end{DoxyCompactItemize}
