GUI
Classes | Public Types | Public Member Functions | Private Attributes | Friends | List of all members
EventEmitter Class Reference

Base class for things that emits events. More...

#include <EventEmitter.h>

Inherited by Widget.

Classes

struct  MapPredicate
 

Public Types

typedef std::multimap< EventType, EventListener > Map
 

Public Member Functions

 EventEmitter ()
 
virtual ~EventEmitter ()
 
void setQueue (AddToQueue addFunction)
 Assings addToQueue function so the events can be sent to the queue. More...
 
EventListener::Id addEventListener (EventType eventType, EventListener::Function listenerFunc)
 Adds an event listener. More...
 
void removeEventListener (EventListener::Id listenerId)
 Removes an event listener. More...
 
void emitEvent (Event event)
 Emitts an event. More...
 

Private Attributes

Map eventListeners
 
AddToQueue addToQueue
 
int lastListenerId
 

Friends

class EventQueue
 

Detailed Description

Base class for things that emits events.

Definition at line 14 of file EventEmitter.h.

Member Typedef Documentation

◆ Map

typedef std::multimap<EventType, EventListener> EventEmitter::Map

Definition at line 17 of file EventEmitter.h.

Constructor & Destructor Documentation

◆ EventEmitter()

EventEmitter::EventEmitter ( )

Definition at line 5 of file EventEmitter.cpp.

◆ ~EventEmitter()

EventEmitter::~EventEmitter ( )
virtual

Definition at line 11 of file EventEmitter.cpp.

Member Function Documentation

◆ addEventListener()

EventListener::Id EventEmitter::addEventListener ( EventType  eventType,
EventListener::Function  listenerFunc 
)

Adds an event listener.

Parameters
Thetype of event the listener is listening on.
Functionwapper of type EventListener::Function.
Returns
Listener's identifier assigned by the event emitter.

Definition at line 21 of file EventEmitter.cpp.

References eventListeners, and lastListenerId.

◆ emitEvent()

void EventEmitter::emitEvent ( Event  event)

Emitts an event.

Parameters
Eventobject created by GUISystem.

Definition at line 37 of file EventEmitter.cpp.

References addToQueue, eventListeners, and Event::type.

◆ removeEventListener()

void EventEmitter::removeEventListener ( EventListener::Id  listenerId)

Removes an event listener.

Parameters
Listener'sidentifier returned by addEventListener function.

Definition at line 30 of file EventEmitter.cpp.

References eventListeners.

◆ setQueue()

void EventEmitter::setQueue ( AddToQueue  addFunction)

Assings addToQueue function so the events can be sent to the queue.

Parameters
Functionwapper of type AddToQueue.

Definition at line 16 of file EventEmitter.cpp.

References addToQueue.

Friends And Related Function Documentation

◆ EventQueue

friend class EventQueue
friend

Definition at line 68 of file EventEmitter.h.

Member Data Documentation

◆ addToQueue

AddToQueue EventEmitter::addToQueue
private

Definition at line 65 of file EventEmitter.h.

◆ eventListeners

Map EventEmitter::eventListeners
private

Definition at line 64 of file EventEmitter.h.

◆ lastListenerId

int EventEmitter::lastListenerId
private

Definition at line 66 of file EventEmitter.h.


The documentation for this class was generated from the following files: