23 private $_listeners = array();
29 if (!isset($this->_listeners[$eventName])) {
30 $this->_listeners[$eventName] = array();
32 $this->_listeners[$eventName][] = $callback;
39 if (isset($this->_listeners[$eventName])) {
41 for ($i=0, $count=
sizeof($this->_listeners[$eventName]); $i<$count; $i++) {
42 $curCallback = $this->_listeners[$eventName][$i];
43 if ($curCallback != $callback) {
44 $listeners[] = $curCallback;
47 $this->_listeners[$eventName] = $listeners;
55 if (isset($this->_listeners[$eventName])) {
56 for ($i=0, $count=
sizeof($this->_listeners[$eventName]); $i<$count; $i++) {
57 $curCallback = $this->_listeners[$eventName][$i];
58 call_user_func($curCallback, $event);
isStopped()
Check if the event is stopped.
EventManager is responsible for dispatching events to registered listeners.
dispatch($eventName, Event $event)
DefaultEventManager is a simple EventManager implementation.
Event is the base class for all events.
addListener($eventName, $callback)
removeListener($eventName, $callback)