Library: XML
Package: DOM
Header: Poco/DOM/EventDispatcher.h
This helper class manages event listener subscriptions and event dispatching for AbstractNode.
The EventListener list is managed in such a way that event listeners can be added and removed even from within an EventListener, while events are being dispatched.
Member Functions: addEventListener, bubbleEvent, captureEvent, dispatchEvent, removeEventListener
Creates the EventDispatcher.
~EventDispatcher();
Destroys the EventDispatcher.
void addEventListener(
const XMLString & type,
EventListener * listener,
bool useCapture
);
Adds an EventListener to the internal list.
void bubbleEvent(
Event * evt
);
Dispatches the event in its bubbling phase.
Also removes all EventListeners marked for deletion from the event dispatcher list.
void captureEvent(
Event * evt
);
Dispatches the event in its capturing phase.
Also removes all EventListeners marked for deletion from the event dispatcher list.
void dispatchEvent(
Event * evt
);
Dispatches the event.
Also removes all EventListeners marked for deletion from the event dispatcher list.
void removeEventListener(
const XMLString & type,
EventListener * listener,
bool useCapture
);
Removes an EventListener from the internal list.
If a dispatch is currently in progress, the list entry is only marked for deletion. If no dispatch is currently in progress, all EventListeners marked for deletion are removed from the list.