320827d577
OK - so I have to admit I *hate* the fact that PIP seems to require a subdirectory named like the library. But since the PIP package is something really nifty to have (thanks to @tony again!!!), I updated the codebase to hopefully conform with what PIP expects. Testruns so far look promising...
29 lines
587 B
Python
29 lines
587 B
Python
__callbacks = {}
|
|
|
|
|
|
def register(event, callback, *args, **kwargs):
|
|
cb = callback
|
|
if len(args) + len(kwargs) > 0:
|
|
cb = lambda: callback(*args, **kwargs)
|
|
|
|
__callbacks.setdefault(event, []).append(cb)
|
|
|
|
|
|
def clear():
|
|
__callbacks.clear()
|
|
|
|
|
|
def trigger(event, *args, **kwargs):
|
|
cb = __callbacks.get(event, [])
|
|
if len(cb) == 0:
|
|
return False
|
|
|
|
for callback in cb:
|
|
if len(args) + len(kwargs) == 0:
|
|
callback()
|
|
else:
|
|
callback(*args, **kwargs)
|
|
return True
|
|
|
|
|
|
# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
|