Skip to content

Instantly share code, notes, and snippets.

@emptypage
Last active November 19, 2015 10:01
Show Gist options
  • Save emptypage/b3f876a2c35832159ef6 to your computer and use it in GitHub Desktop.
Save emptypage/b3f876a2c35832159ef6 to your computer and use it in GitHub Desktop.
# event.py (simple)
class Event(object):
def __init__(self):
self.handlers = []
def add(self, handler):
self.handlers.append(handler)
return self
def remove(self, handler):
self.handlers.remove(handler)
return self
def fire(self, sender, earg=None):
for handler in self.handlers:
handler(sender, earg)
__iadd__ = add
__isub__ = remove
__call__ = fire
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment