\hypertarget{class_ogre_bites_1_1_window_event_utilities}{}\section{Ogre\+Bites\+:\+:Window\+Event\+Utilities Class Reference}
\label{class_ogre_bites_1_1_window_event_utilities}\index{Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}}


Utility class to handle Window Messages.  




{\ttfamily \#include $<$Ogre\+Window\+Event\+Utilities.\+h$>$}

\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static void \hyperlink{class_ogre_bites_1_1_window_event_utilities_a93065e93112392763965e639e817a8b2}{\+\_\+add\+Render\+Window} (\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$window)
\item 
static void \hyperlink{class_ogre_bites_1_1_window_event_utilities_a5e2b1b878d96033ce7f7111156465845}{\+\_\+remove\+Render\+Window} (\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$window)
\item 
static void \hyperlink{class_ogre_bites_1_1_window_event_utilities_a0490ade8c42a14a248dc48aeb269791c}{add\+Window\+Event\+Listener} (\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$window, \hyperlink{class_ogre_bites_1_1_window_event_listener}{Window\+Event\+Listener} $\ast$listener)
\item 
static void \hyperlink{class_ogre_bites_1_1_window_event_utilities_a9cea96078c3b412c9bcacca1b1dc3aac}{message\+Pump} ()
\begin{DoxyCompactList}\small\item\em Call this once per frame. \end{DoxyCompactList}\item 
static void \hyperlink{class_ogre_bites_1_1_window_event_utilities_a032c630ebfffbf7def895f9b2762c2f4}{remove\+Window\+Event\+Listener} (\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$window, \hyperlink{class_ogre_bites_1_1_window_event_listener}{Window\+Event\+Listener} $\ast$listener)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Utility class to handle Window Messages. 

This only provides a minimal implementation for moving/ resizing windows. For input handling and proper platform integration rather use S\+D\+L2/ Qt/ whatever. \begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_bites_1_1_application_context}{Application\+Context} 
\end{DoxySeeAlso}


\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_bites_1_1_window_event_utilities_a9cea96078c3b412c9bcacca1b1dc3aac}\label{class_ogre_bites_1_1_window_event_utilities_a9cea96078c3b412c9bcacca1b1dc3aac}} 
\index{Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}!message\+Pump@{message\+Pump}}
\index{message\+Pump@{message\+Pump}!Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}}
\subsubsection{\texorpdfstring{message\+Pump()}{messagePump()}}
{\footnotesize\ttfamily static void Ogre\+Bites\+::\+Window\+Event\+Utilities\+::message\+Pump (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Call this once per frame. 

This will update all registered Render\+Windows. \mbox{\Hypertarget{class_ogre_bites_1_1_window_event_utilities_a0490ade8c42a14a248dc48aeb269791c}\label{class_ogre_bites_1_1_window_event_utilities_a0490ade8c42a14a248dc48aeb269791c}} 
\index{Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}!add\+Window\+Event\+Listener@{add\+Window\+Event\+Listener}}
\index{add\+Window\+Event\+Listener@{add\+Window\+Event\+Listener}!Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}}
\subsubsection{\texorpdfstring{add\+Window\+Event\+Listener()}{addWindowEventListener()}}
{\footnotesize\ttfamily static void Ogre\+Bites\+::\+Window\+Event\+Utilities\+::add\+Window\+Event\+Listener (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$}]{window,  }\item[{\hyperlink{class_ogre_bites_1_1_window_event_listener}{Window\+Event\+Listener} $\ast$}]{listener }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\begin{DoxyRemark}{Remarks}
Add a listener to listen to renderwindow events (multiple listener\textquotesingle{}s per renderwindow is fine) The same listener can listen to multiple windows, as the Window Pointer is sent along with any messages. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em window} & The Render\+Window you are interested in monitoring \\
\hline
{\em listener} & Your callback listener \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_bites_1_1_window_event_utilities_a032c630ebfffbf7def895f9b2762c2f4}\label{class_ogre_bites_1_1_window_event_utilities_a032c630ebfffbf7def895f9b2762c2f4}} 
\index{Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}!remove\+Window\+Event\+Listener@{remove\+Window\+Event\+Listener}}
\index{remove\+Window\+Event\+Listener@{remove\+Window\+Event\+Listener}!Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}}
\subsubsection{\texorpdfstring{remove\+Window\+Event\+Listener()}{removeWindowEventListener()}}
{\footnotesize\ttfamily static void Ogre\+Bites\+::\+Window\+Event\+Utilities\+::remove\+Window\+Event\+Listener (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$}]{window,  }\item[{\hyperlink{class_ogre_bites_1_1_window_event_listener}{Window\+Event\+Listener} $\ast$}]{listener }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\begin{DoxyRemark}{Remarks}
Remove previously added listener 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em window} & The Render\+Window you registered with \\
\hline
{\em listener} & The listener registered \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_bites_1_1_window_event_utilities_a93065e93112392763965e639e817a8b2}\label{class_ogre_bites_1_1_window_event_utilities_a93065e93112392763965e639e817a8b2}} 
\index{Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}!\+\_\+add\+Render\+Window@{\+\_\+add\+Render\+Window}}
\index{\+\_\+add\+Render\+Window@{\+\_\+add\+Render\+Window}!Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}}
\subsubsection{\texorpdfstring{\+\_\+add\+Render\+Window()}{\_addRenderWindow()}}
{\footnotesize\ttfamily static void Ogre\+Bites\+::\+Window\+Event\+Utilities\+::\+\_\+add\+Render\+Window (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$}]{window }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\begin{DoxyRemark}{Remarks}
Call upon creation of \hyperlink{namespace_ogre}{Ogre} windows. You are free to add your external windows here too if needed. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em window} & The Render\+Window to monitor \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_bites_1_1_window_event_utilities_a5e2b1b878d96033ce7f7111156465845}\label{class_ogre_bites_1_1_window_event_utilities_a5e2b1b878d96033ce7f7111156465845}} 
\index{Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}!\+\_\+remove\+Render\+Window@{\+\_\+remove\+Render\+Window}}
\index{\+\_\+remove\+Render\+Window@{\+\_\+remove\+Render\+Window}!Ogre\+Bites\+::\+Window\+Event\+Utilities@{Ogre\+Bites\+::\+Window\+Event\+Utilities}}
\subsubsection{\texorpdfstring{\+\_\+remove\+Render\+Window()}{\_removeRenderWindow()}}
{\footnotesize\ttfamily static void Ogre\+Bites\+::\+Window\+Event\+Utilities\+::\+\_\+remove\+Render\+Window (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_render_window}{Ogre\+::\+Render\+Window} $\ast$}]{window }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\begin{DoxyRemark}{Remarks}
Called upon deletion of previously registered windows. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em window} & The Render\+Window to remove from list \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\hyperlink{_ogre_window_event_utilities_8h}{Ogre\+Window\+Event\+Utilities.\+h}\end{DoxyCompactItemize}
