diff options
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Components/Converter/ConditionalShowHide.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/python/Components/Converter/ConditionalShowHide.py b/lib/python/Components/Converter/ConditionalShowHide.py index 8d9baf7d..2d4b99a2 100644 --- a/lib/python/Components/Converter/ConditionalShowHide.py +++ b/lib/python/Components/Converter/ConditionalShowHide.py @@ -5,10 +5,18 @@ class ConditionalShowHide(Converter, object): Converter.__init__(self, type) self.invert = type == "Invert" + def calcVisibility(self): + b = self.source.boolean + if b is None: + return True + b ^= self.invert + return b + def changed(self, what): + vis = self.calcVisibility() for x in self.downstream_elements: - x.visible = self.source.boolean ^ self.invert + x.visible = vis def connectDownstream(self, downstream): Converter.connectDownstream(self, downstream) - downstream.visible = self.source.boolean ^ self.invert + downstream.visible = self.calcVisibility() |
