Contents:
Tyuio is a Simple Event Dispatcher api
@author: Moises P. Sena <moisespsena@gmail.com>
Bases: object
Generic Event object to use with EventDispatcher.
Example:
>>> dispatcher = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... print(e.type)
>>> dispatcher.add_event_listener("my_type", callback)
<EventDispatcher()>
>>> dispatcher.dispatch(Event("my_type"))
my_type
<Event('my_type')>
Bases: object
Generic event dispatcher which listen and dispatch events
Examples:
>>> d = EventDispatcher()
or
>>> class Target(object):
... def __repr__(self):
... return '<%s object>' % self.__class__.__name__
>>> d = EventDispatcher(Target())
>>> d.target
<Target object>
Add listeners:
>>> def callback(e, *args, **kwargs):
... pass
>>> d.add_event_listener('my_event', callback)
<EventDispatcher(target=<Target object>)>
>>> d.add_event_listeners('my_event', callback, callback)
<EventDispatcher(target=<Target object>)>
>>> d.add_events_listeners(('my_event', [callback, callback]))
<EventDispatcher(target=<Target object>)>
>>> d.add_events_listeners(('my_event', [callback, callback]), ('another_event', [callback, callback]))
<EventDispatcher(target=<Target object>)>
Add one listener at event type
Parameters: |
|
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.add_event_listener('my_event', callback)
<EventDispatcher()>
Add one or more listeners at event type
Parameters: |
|
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.add_events_listeners('my_event', [callback, callback])
<EventDispatcher()>
Add multiples listeners on varios events types.
Parameters: | types_with_listeners – tuples of (event_type, listeners) |
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.add_events_listeners(('my_event', [callback, callback]), ('another_event', [callback, callback]))
<EventDispatcher()>
Dispatch all listeners of event.type
Parameters: |
|
---|---|
Returns: | the event object |
>>> dispatcher = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... print(e.type)
>>> dispatcher.add_event_listener("my_type", callback)
<EventDispatcher()>
>>> dispatcher.dispatch(Event("my_type"))
my_type
<Event('my_type')>
Check if dispatch contains the listener of event_type event type. :param event_type: The event type :param listener: The listener callback :return: True if contains, other else, False
Add one listener at event type
Parameters: |
|
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.add_event_listener('my_event', callback)
<EventDispatcher()>
Remove one listener at event type
Parameters: |
|
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.remove_event_listener('my_event', callback)
<EventDispatcher()>
Remove one or more listeners at event type
Parameters: |
|
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.remove_events_listeners('my_event', [callback, callback])
<EventDispatcher()>
Removes multiples listeners on varios events types.
Parameters: | types_with_listeners – tuples of (event_type, listeners) |
---|---|
Returns: | the self object |
Example:
>>> d = EventDispatcher()
>>> def callback(e, *args, **kwargs):
... pass
>>> d.remove_events_listeners(('my_event', [callback, callback]),('another_event', [callback, callback]))
<EventDispatcher()>