diff options
author | Sebastian Koslowski <koslowski@kit.edu> | 2014-08-20 17:51:17 +0200 |
---|---|---|
committer | Sebastian Koslowski <koslowski@kit.edu> | 2014-08-20 17:51:17 +0200 |
commit | 17766c2077ab6120d565a26552e09c37b8277d0a (patch) | |
tree | 7fb3a8b83f378fba31e435125e9ebec4656e0da4 /grc/gui/Actions.py | |
parent | 0dd158155c074113ec1cc6a3de7ecdd2be7d65e8 (diff) |
grc: one preferences handler for all bools
Diffstat (limited to 'grc/gui/Actions.py')
-rw-r--r-- | grc/gui/Actions.py | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/grc/gui/Actions.py b/grc/gui/Actions.py index 484952b53a..f4191a41fb 100644 --- a/grc/gui/Actions.py +++ b/grc/gui/Actions.py @@ -21,6 +21,8 @@ import pygtk pygtk.require('2.0') import gtk +import Preferences + NO_MODS_MASK = 0 ######################################################################## @@ -127,7 +129,7 @@ class ToggleAction(gtk.ToggleAction, _ActionBase): Pass additional arguments such as keypresses. """ - def __init__(self, keypresses=(), name=None, label=None, tooltip=None, stock_id=None): + def __init__(self, keypresses=(), name=None, label=None, tooltip=None, stock_id=None, preference_name=None): """ Create a new ToggleAction instance. @@ -142,6 +144,15 @@ class ToggleAction(gtk.ToggleAction, _ActionBase): ) #register this action _ActionBase.__init__(self, label, keypresses) + self.preference_name = preference_name + + def load_from_preferences(self): + if self.preference_name is not None: + self.set_active(Preferences.bool_entry(self.preference_name)) + + def save_to_preferences(self): + if self.preference_name is not None: + Preferences.bool_entry(self.preference_name, self.get_active()) ######################################################################## # Actions @@ -245,6 +256,7 @@ TOGGLE_HIDE_DISABLED_BLOCKS = ToggleAction( TOGGLE_AUTO_HIDE_PORT_LABELS = ToggleAction( label='Auto-hide port _labels', tooltip='Automatically hide port labels', + preference_name='auto_hide_port_labels' ) BLOCK_CREATE_HIER = Action( label='C_reate Hier', @@ -279,15 +291,18 @@ TOGGLE_REPORTS_WINDOW = ToggleAction( label='Show _Reports', tooltip='Toggle visibility of the Report widget', keypresses=(gtk.keysyms.r, gtk.gdk.CONTROL_MASK), + preference_name='reports_window_visible' ) TOGGLE_BLOCKS_WINDOW = ToggleAction( label='Show _Block Tree', tooltip='Toggle visibility of the block tree widget', keypresses=(gtk.keysyms.b, gtk.gdk.CONTROL_MASK), + preference_name='blocks_window_visible' ) TOGGLE_SCROLL_LOCK = ToggleAction( label='_Reports Scroll Lock', tooltip='Toggle scroll lock for the report window', + preference_name='scroll_lock' ) ABOUT_WINDOW_DISPLAY = Action( label='_About', |