Callback dispatcher return callback value.

Also import it with the widgets namespace so it can be used elsewhere.
Jonathan Frederic 12 years ago
parent 820d58c721
commit e793d022b5

@ -1,4 +1,4 @@
from .widget import Widget, DOMWidget
from .widget import Widget, DOMWidget, CallbackDispatcher
from .widget_bool import CheckBoxWidget, ToggleButtonWidget
from .widget_button import ButtonWidget

@ -40,9 +40,12 @@ class CallbackDispatcher(LoggingConfigurable):
positional arguments."""
nargs = len(pargs)
self._validate_nargs(nargs)
value = None
if nargs in self.callbacks:
for callback in self.callbacks[nargs]:
callback(*pargs, **kwargs)
local_value = callback(*pargs, **kwargs)
value = local_value if local_value is not None else value
return value
def register_callback(self, callback, remove=False):
"""(Un)Register a callback

Loading…
Cancel
Save