def __init__(self, **options): options['setWidgetValue'] = False QtGui.QWidget.__init__(self, options.setdefault('parentWidget', None)) RegisteredTypeWidget.__init__(self, **options) def defineLineEditSubWidget(): widget = QtGui.QLineEdit(self) validator = QtGui.QDoubleValidator(self) widget.setValidator(validator) return widget self.__editReWidget = defineLineEditSubWidget() self.__editImWidget = defineLineEditSubWidget() layout = QtGui.QGridLayout() layout.addWidget(QtGui.QLabel("Re:"), 0, 0) layout.addWidget(self.__editReWidget, 0, 1) layout.addWidget(QtGui.QLabel("Im:"), 1, 0) layout.addWidget(self.__editImWidget, 1, 1) layout.setSpacing(2) layout.setContentsMargins(0, 0, 0, 0) self.setLayout(layout) self.setSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) self.setWidgetValue(options['getter']()) if self._hasSetter(): self.__editReWidget.editingFinished.connect(self._invokeSetter) self.__editImWidget.editingFinished.connect(self._invokeSetter)
def __init__(self, **options): QtGui.QLineEdit.__init__(self, options.setdefault('parentWidget', None)) RegisteredTypeWidget.__init__(self, **options) self.setMinimumWidth(RegisteredTypeWidget.getRTWidgetMinWidth()) self.setMaximumWidth(RegisteredTypeWidget.getRTWidgetMaxWidth()) self.setSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) validator = QtGui.QDoubleValidator(self) self.setValidator(validator) if self._hasSetter(): self.editingFinished.connect(self._invokeSetter)
from PySide import QtGui, QtCore from FabricEngine.CreationPlatform.PySide.Widgets.RT.RegisteredTypeWidgetImpl import RegisteredTypeWidget class Float64Widget(QtGui.QLineEdit, RegisteredTypeWidget): def __init__(self, **options): QtGui.QLineEdit.__init__(self, options.setdefault('parentWidget', None)) RegisteredTypeWidget.__init__(self, **options) self.setMinimumWidth(RegisteredTypeWidget.getRTWidgetMinWidth()) self.setMaximumWidth(RegisteredTypeWidget.getRTWidgetMaxWidth()) self.setSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) validator = QtGui.QDoubleValidator(self) self.setValidator(validator) if self._hasSetter(): self.editingFinished.connect(self._invokeSetter) @classmethod def getRTName(cls): return "Float64" def getWidgetValue(self): return float(self.text()) def setWidgetValue(self, value): self.setText(str(value)) RegisteredTypeWidget.registerRTWidget(Float64Widget)
self.__editImWidget = defineLineEditSubWidget() layout = QtGui.QGridLayout() layout.addWidget(QtGui.QLabel("Re:"), 0, 0) layout.addWidget(self.__editReWidget, 0, 1) layout.addWidget(QtGui.QLabel("Im:"), 1, 0) layout.addWidget(self.__editImWidget, 1, 1) layout.setSpacing(2) layout.setContentsMargins(0, 0, 0, 0) self.setLayout(layout) self.setSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed) self.setWidgetValue(options['getter']()) if self._hasSetter(): self.__editReWidget.editingFinished.connect(self._invokeSetter) self.__editImWidget.editingFinished.connect(self._invokeSetter) @staticmethod def getRTName(): return "Complex64" def getWidgetValue(self): return Complex64(float(self.__editReWidget.text()), float(self.__editImWidget.text())) def setWidgetValue(self, value): self.__editReWidget.setText(str(value.re)) self.__editImWidget.setText(str(value.im)) RegisteredTypeWidget.registerRTWidget(Complex64Widget)