|
Axmol 3.0.0-89d6d9a
|
This class manages event listener subscriptions and event dispatching. More...
#include <EventDispatcher.h>
Inherits Object.
Public Member Functions | |
| void | addEventListenerWithSceneGraphPriority (EventListener *listener, Node *node) |
| Adds a event listener for a specified event with the priority of scene graph. | |
| void | addEventListenerWithFixedPriority (EventListener *listener, int fixedPriority) |
| Adds a event listener for a specified event with the fixed priority. | |
| CustomEventListener * | addCustomEventListener (std::string_view eventName, const std::function< void(CustomEvent *)> &callback, int priority=1) |
| Adds a Custom event listener. | |
| void | removeEventListener (EventListener *listener) |
| Remove a listener. | |
| void | removeEventListenersForType (EventListener::Type listenerType) |
| Removes all listeners with the same event listener type. | |
| void | removeEventListenersForTarget (Node *target, bool recursive=false) |
| Removes all listeners which are associated with the specified target. | |
| void | removeCustomEventListeners (std::string_view customEventName) |
| Removes all custom listeners with the same event name. | |
| void | removeAllEventListeners () |
| Removes all listeners. | |
| void | pauseEventListenersForTarget (Node *target, bool recursive=false) |
| Pauses all listeners which are associated the specified target. | |
| void | resumeEventListenersForTarget (Node *target, bool recursive=false) |
| Resumes all listeners which are associated the specified target. | |
| void | setPriority (EventListener *listener, int fixedPriority) |
| Sets listener's priority with fixed value. | |
| void | setEnabled (bool isEnabled) |
| Whether to enable dispatching events. | |
| bool | isEnabled () const |
| Checks whether dispatching events is enabled. | |
| void | dispatchEvent (Event *event, bool forced=false) |
| Dispatches the event. | |
| void | dispatchCustomEvent (std::string_view eventName, void *optionalUserData=nullptr, bool forced=false) |
| Dispatches a Custom Event with a event name an optional user data. | |
| bool | hasEventListener (std::string_view listenerID) const |
| Query whether the specified event listener id has been added. | |
| EventDispatcher () | |
| Constructor of EventDispatcher. | |
| ~EventDispatcher () | |
| Destructor of EventDispatcher. | |
| Public Member Functions inherited from Object | |
| void | retain () |
| Retains the ownership. | |
| void | release () |
| Releases the ownership immediately. | |
| Object * | autorelease () |
| Releases the ownership sometime soon automatically. | |
| unsigned int | getReferenceCount () const |
| Returns the Object's current reference count. | |
| uint64_t | getObjectID () const noexcept |
| Returns the process-local diagnostic identifier assigned at construction. | |
| virtual | ~Object () |
| Destructor. | |
This class manages event listener subscriptions and event dispatching.
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.
| void addEventListenerWithSceneGraphPriority | ( | EventListener * | listener, |
| Node * | node ) |
Adds a event listener for a specified event with the priority of scene graph.
| listener | The listener of a specified event. |
| node | The priority of the listener is based on the draw order of this node. |
| void addEventListenerWithFixedPriority | ( | EventListener * | listener, |
| int | fixedPriority ) |
Adds a event listener for a specified event with the fixed priority.
| listener | The listener of a specified event. |
| fixedPriority | The fixed priority of the listener. |
| CustomEventListener * addCustomEventListener | ( | std::string_view | eventName, |
| const std::function< void(CustomEvent *)> & | callback, | ||
| int | priority = 1 ) |
Adds a Custom event listener.
It will use a fixed priority of 1.
| eventName | A given name of the event. |
| callback | A given callback method that associated the event name. |
| void removeEventListener | ( | EventListener * | listener | ) |
Remove a listener.
| listener | The specified event listener which needs to be removed. |
| void removeEventListenersForType | ( | EventListener::Type | listenerType | ) |
Removes all listeners with the same event listener type.
| listenerType | A given event listener type which needs to be removed. |
| void removeEventListenersForTarget | ( | Node * | target, |
| bool | recursive = false ) |
Removes all listeners which are associated with the specified target.
| target | A given target node. |
| recursive | True if remove recursively, the default value is false. |
| void removeCustomEventListeners | ( | std::string_view | customEventName | ) |
Removes all custom listeners with the same event name.
| customEventName | A given event listener name which needs to be removed. |
| void pauseEventListenersForTarget | ( | Node * | target, |
| bool | recursive = false ) |
Pauses all listeners which are associated the specified target.
| target | A given target node. |
| recursive | True if pause recursively, the default value is false. |
| void resumeEventListenersForTarget | ( | Node * | target, |
| bool | recursive = false ) |
Resumes all listeners which are associated the specified target.
| target | A given target node. |
| recursive | True if resume recursively, the default value is false. |
| void setPriority | ( | EventListener * | listener, |
| int | fixedPriority ) |
Sets listener's priority with fixed value.
| listener | A given listener. |
| fixedPriority | The fixed priority value. |
| void setEnabled | ( | bool | isEnabled | ) |
Whether to enable dispatching events.
| isEnabled | True if enable dispatching events. |
| bool isEnabled | ( | ) | const |
Checks whether dispatching events is enabled.
| void dispatchEvent | ( | Event * | event, |
| bool | forced = false ) |
Dispatches the event.
Also removes all EventListeners marked for deletion from the event dispatcher list.
| event | The event needs to be dispatched. |
| forced | If the event should be sent out regardless of enabled state |
| void dispatchCustomEvent | ( | std::string_view | eventName, |
| void * | optionalUserData = nullptr, | ||
| bool | forced = false ) |
Dispatches a Custom Event with a event name an optional user data.
| eventName | The name of the event which needs to be dispatched. |
| optionalUserData | The optional user data, it's a void*, the default value is nullptr. |
| forced | If the event should be sent out regardless of enabled state |
| bool hasEventListener | ( | std::string_view | listenerID | ) | const |
Query whether the specified event listener id has been added.
| listenerID | The listenerID of the event listener id. |