summaryrefslogtreecommitdiff
path: root/grc/gui
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2009-09-25 00:24:48 -0700
committerJosh Blum <josh@joshknows.com>2009-09-25 00:24:48 -0700
commitfd37328c778ea8014e9ea9d932e61e5d229dd012 (patch)
tree416d219f4cf7a85f4b12de25b6a86192f813259c /grc/gui
parent16474a0adb44dc81a8338a9c4a9a6dcab6f6328f (diff)
Added a run options to the "no gui" generate options.
The user can select between run to completion and prompt for exit. Also fixed the props dialog is changed function to have better hashes. Now we hash a tuple of all "relevant" items which is "order aware". Since xoring the individual hashes proved faulty when 2 params alternated hiding.
Diffstat (limited to 'grc/gui')
-rw-r--r--grc/gui/PropsDialog.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/grc/gui/PropsDialog.py b/grc/gui/PropsDialog.py
index a7822b2284..cc84fd0888 100644
--- a/grc/gui/PropsDialog.py
+++ b/grc/gui/PropsDialog.py
@@ -93,15 +93,14 @@ class PropsDialog(gtk.Dialog):
Ex: Added, removed, type change, hide change...
To the props dialog, the hide setting of 'none' and 'part' are identical.
Therfore, the props dialog only cares if the hide setting is/not 'all'.
- Make a hash that uniquely represents the params state.
+ Make a hash that uniquely represents the params' state.
@return true if changed
"""
old_hash = self._hash
- self._hash = 0
- for param in self._block.get_params():
- self._hash ^= hash(param)
- self._hash ^= hash(param.get_type())
- self._hash ^= hash(param.get_hide() == 'all')
+ #create a tuple of things from each param that affects the params box
+ self._hash = hash(tuple([(
+ hash(param), param.get_type(), param.get_hide() == 'all',
+ ) for param in self._block.get_params()]))
return self._hash != old_hash
def _handle_changed(self, *args):