Пример #1
0
 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)
Пример #4
0
    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)