EventDispatcher class reference
The base class that provides the Window class functions for binding events, adding or removing them from the window, and function that control the flow of events inside the window that will delegate events to specific widgets.
Functions documentation
Default constructor.
~
EventDispatcher
();
Removes all events and bindings that are stored internally. It simply execute the Cleanup() function.
void RaiseEvent(
Event
* event);
Adds an event to the window event queue.
Binds an event to a specific function. It allows you to bind multiple functions to one type of event. Returns the iterator needed to unbound a function. The function is added to the end of the processing queue.
void UnbindEvent(BindListIterator it);
It de-binds a previously bound function.
void DispatchEvents(
Window
* currentWindow);
Delegate events to specific widgets. Events are processed in FIFO queue.
void Cleanup();
Removes all events and bindings that are stored internally.
Variables documentation
bool m_bFifoDrawable;
Responsible for the mode of iterating through the binded functions. If true FIFO, if false->FILO.
bool m_bBindingsChangeFlag;
Flag monitoring changes occurring in the list of bound functions.
std::list<
Event
*> m_Events;
List of Events.
//
Event
* m_FrameEvents[EVENT_TYPES];
Following events are stored here: WindowInvokeOperateFunc, WindowClose, WindowResize, WindowMove, DrawableInvokeRender
Event
* m_LastMoveEvent;
Stores last WindowMove event.
std::list<BindListPair> m_FunctionBindings;
List of bound functions.
std::list<BindListPair> m_FunctionBindingsCpy;
Copy of m_FunctionBindings list.