##// END OF EJS Templates
Add a new context manager, Widget.hold_sync(), which holds any syncing until the manager exits...
Add a new context manager, Widget.hold_sync(), which holds any syncing until the manager exits Sometimes for consistency or efficiency purposes, it makes sense to update a group of properties all at once. This context manager makes this possible. We also fix a bug where send_state was not passing the key on to get_state.

File last commit:

r16376:7cc6a1ea
r17621:fb8baf19
Show More
widget_bool.py
34 lines | 1.2 KiB | text/x-python | PythonLexer
"""BoolWidget class.
Represents a boolean using a widget.
"""
#-----------------------------------------------------------------------------
# Copyright (c) 2013, the IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from .widget import DOMWidget
from IPython.utils.traitlets import Unicode, Bool
#-----------------------------------------------------------------------------
# Classes
#-----------------------------------------------------------------------------
class _BoolWidget(DOMWidget):
value = Bool(False, help="Bool value", sync=True)
description = Unicode('', help="Description of the boolean (label).", sync=True)
disabled = Bool(False, help="Enable or disable user changes.", sync=True)
class CheckboxWidget(_BoolWidget):
_view_name = Unicode('CheckboxView', sync=True)
class ToggleButtonWidget(_BoolWidget):
_view_name = Unicode('ToggleButtonView', sync=True)