Class EventObserver

protocol ooodev.proto.event_observer.EventObserver[source]

Protocol Class for Event Observer.

See also

lo_events

Classes that implement this protocol must have the following methods / attributes:

add_observer(*args)[source]

Adds observers that gets their trigger method called when this class trigger method is called.

Parameters:

args (EventObserver) – One or more observers to add.

Return type:

None

Note

Observers are removed automatically when they are out of scope.

on(event_name, callback)[source]

Registers an event

Parameters:
  • event_name (str) – Unique event name

  • callback (Callable[[object, EventArgs], None]) – Callback function

remove(event_name, callback)[source]

Removes an event callback

Parameters:
  • event_name (str) – Unique event name

  • callback (Callable[[object, EventArgs], None]) – Callback function

Returns:

True if callback has been removed; Otherwise, False. False means the callback was not found.

Return type:

bool

remove_observer(observer)[source]

Removes an observer

Parameters:

observer (EventObserver) – One or more observers to add.

Returns:

True if observer has been removed; Otherwise, False.

Return type:

bool

trigger(event_name, event_args)[source]

Trigger event(s) for a given name.

Parameters:
  • event_name (str) – Name of event to trigger

  • event_args (EventArgsT) – Event args passed to the callback for trigger.