def _init_ui(self): # Widgets self._btn_atomic_number = AtomicNumberAttributePushButton(self.CLASS.atomic_number) # Layouts layout = _ConditionWidget._init_ui(self) layout.addRow('<i>Element</i>', self._btn_atomic_number) # Signals self._btn_atomic_number.selectionChanged.connect(self.edited) return layout
class ElementalIDWidget(_ConditionWidget): def __init__(self, parent=None): _ConditionWidget.__init__(self, ElementalID, parent) def _init_ui(self): # Widgets self._btn_atomic_number = AtomicNumberAttributePushButton(self.CLASS.atomic_number) # Layouts layout = _ConditionWidget._init_ui(self) layout.addRow('<i>Element</i>', self._btn_atomic_number) # Signals self._btn_atomic_number.selectionChanged.connect(self.edited) return layout def _create_parameter(self): return self.CLASS(1) def parameter(self, parameter=None): parameter = _ConditionWidget.parameter(self, parameter) parameter.atomic_number = self._btn_atomic_number.atomicNumber() return parameter def setParameter(self, condition): _ConditionWidget.setParameter(self, condition) self._btn_atomic_number.setAtomicNumber(condition.atomic_number) def setReadOnly(self, state): _ConditionWidget.setReadOnly(self, state) self._btn_atomic_number.setEnabled(not state) def isReadOnly(self): return _ConditionWidget.isReadOnly(self) and \ not self._btn_atomic_number.isEnabled()