| 1002 | |
| 1003 | |
| 1004 | def on_widget_change(self, widget): |
| 1005 | name = widget.objectName() |
| 1006 | def validate(value): |
| 1007 | try: |
| 1008 | if value: |
| 1009 | value = json.loads(value) |
| 1010 | else: |
| 1011 | value = None |
| 1012 | palette = QtGui.QPalette() |
| 1013 | palette.setColor(widget.backgroundRole(), QtGui.QColor('white')) |
| 1014 | widget.setPalette(palette) |
| 1015 | self.arguments[name] = value |
| 1016 | self.valid[name] = True |
| 1017 | except: |
| 1018 | palette = QtGui.QPalette() |
| 1019 | palette.setColor(widget.backgroundRole(), QtGui.QColor(255, 102, 102)) |
| 1020 | widget.setPalette(palette) |
| 1021 | self.valid[name] = False |
| 1022 | |
| 1023 | self.buttonBox.setEnabled(all(self.valid.values())) |
| 1024 | |
| 1025 | return validate |
| 1026 | |
| 1027 | def accept(self): |
| 1028 | super().accept() |