예제 #1
0
    def __createThermo(self, pos):

        palette = Qt.QPalette()
        for colorRole in colorRoleList:
            palette.setColor(colorRole, Qt.QColor())
        palette.setColor(
            Qt.QPalette.Base,
            #Alterando uma pouco a cor, mais forte ou mais fraco, depende do valor
            self.palette().color(self.backgroundRole()).light(105))
        palette.setColor(
            #Cor de fundo do corculo da agulha
            Qt.QPalette.Foreground,
            palette.color(Qt.QPalette.Base))

        #Fonte
        font = QtGui.QFont()
        font.setPointSize(20)
        font.setBold(False)
        font.setWeight(50)
        font.setStyle(Qt.QFont.s)

        # Criando Escala
        scale = Qwt.QwtThermo()
        scale.setGeometry(QtCore.QRect(70, 40, 91, 431))
        scale.setFont(font)
        # Define Cor da escala, quando ultrapassar o limite
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        #Seta estas configurações para um alarma, da escala
        scale.setAlarmBrush(brush)
        scale.setAlarmColor(QtGui.QColor(255, 0, 0))
        #habilita o Alarme
        scale.setAlarmEnabled(True)
        #Define o Valor Limite, ate que o alarme seja habilitado
        scale.setAlarmLevel(80.0)
        # Define Posição da Escala
        scale.setScalePosition(Qwt.QwtThermo.TopScale)
        #scale.setOrientation(Qwt.QwtThermo.scalePosition()
        #Tamanho da borda da escala
        #scale.setBorderWidth(3)
        # Define a cor da escala padrão, quando ela nao esta acima do limite
        brush = QtGui.QBrush(QtGui.QColor(0, 85, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        # Ativa esse valor para a escala
        scale.setFillBrush(brush)
        # Define valor maximo da escala
        scale.setMaxValue(100)
        # Define largura da escala
        scale.setPipeWidth(21)
        # Pasa um valor para a escala
        scale.setValue(100.0)
        #scale.setProperty("value", 98.0)
        scale.setObjectName(_fromUtf8("Escala de Profundidade"))

        newPalette = scale.palette()

        scale.setPalette(newPalette)

        return scale
예제 #2
0
    def create_ampere(self):
        ampere = Qwt.QwtThermo(self)
        ampere.setPipeWidth(6)
        ampere.setRange(0, 120)
        ampere.setAlarmLevel(80)
        ampere.setAlarmEnabled(True)
        ampere.setFillColor(Qt.green)
        ampere.setAlarmColor(Qt.red)
        ampere.setOrientation(Qt.Horizontal, Qwt.QwtThermo.BottomScale)

        return ampere
예제 #3
0
 def create_thermo(self):
     thermo = Qwt.QwtThermo(self)
     thermo.setPipeWidth(6)
     thermo.setRange(0, 120)
     thermo.setAlarmLevel(80)
     thermo.setAlarmEnabled(True)
     thermo.setFillColor(Qt.green)
     thermo.setAlarmColor(Qt.red)
     thermo.setOrientation(Qt.Horizontal, Qwt.QwtThermo.BottomScale)
     
     return thermo
예제 #4
0
    def __init__(self, parent=None):
        Widget.__init__(self)
        QtGui.QWidget.__init__(self, parent)
        self.thermo = Qwt.QwtThermo(self)

        self.font = QtGui.QFont()
        self.font.setPointSize(10)
        self.font.setBold(True)
        self.thermo.setFont(self.font)

        self.thermo.setAutoFillBackground(False)
        self.thermo.setStyleSheet("color: rgb(0, 0, 0);\n" "")
        #self.thermo.setInputMethodHints(QtCore.Qt.ImhNone)
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        self.thermo.setAlarmBrush(brush)
        self.thermo.setAlarmColor(QtGui.QColor(255, 0, 0))
        self.thermo.setAlarmEnabled(True)
        self.thermo.setAlarmLevel(80.0)
        self.thermo.setScalePosition(Qwt.QwtThermo.LeftScale)
        self.thermo.setBorderWidth(3)
        brush = QtGui.QBrush(QtGui.QColor(0, 170, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        self.thermo.setFillBrush(brush)
        self.thermo.setMaxValue(100.0)
        self.thermo.setPipeWidth(20)
        self.thermo.setObjectName("Thermo")
        self.thermo.minVal = 0
        self.thermo.maxVal = 100

        self.lcdNumber = QtGui.QLCDNumber()

        self.fontDisplay = QtGui.QFont()
        self.fontDisplay.setPointSize(16)
        self.fontDisplay.setKerning(False)
        self.lcdNumber.setFont(self.fontDisplay)
        self.lcdNumber.setFrameShape(QtGui.QFrame.NoFrame)
        self.lcdNumber.setFrameShadow(QtGui.QFrame.Raised)
        self.lcdNumber.setSmallDecimalPoint(False)
        self.lcdNumber.setDigitCount(5)
        self.lcdNumber.setSegmentStyle(QtGui.QLCDNumber.Flat)
        self.lcdNumber.setObjectName("lcdNumber")
        self.lcdNumber.setMinimumHeight(45)
        self.lcdNumber.setMinimumWidth(75)
        layout = QtGui.QVBoxLayout(self)
        #layout.setMargin(0)
        #layout.setSpacing(0)
        layout.addWidget(self.thermo, 0, QtCore.Qt.AlignHCenter)
        layout.addWidget(self.lcdNumber)
예제 #5
0
    def create_scale(self,
                     info,
                     width=6,
                     orientation=Qt.Horizontal,
                     scale=Qwt.QwtThermo.BottomScale,
                     alarm=True):
        ampere = Qwt.QwtThermo(self)
        ampere.setPipeWidth(width)
        ampere.setRange(info[0], info[1])
        ampere.setAlarmLevel(info[2])
        ampere.setAlarmEnabled(alarm)
        ampere.setFillColor(Qt.green)
        ampere.setAlarmColor(Qt.red)
        ampere.setOrientation(orientation, scale)

        return ampere
예제 #6
0
파일: RadioDemo.py 프로젝트: gyenney/Tools
    def __init__(self, *args):
        Qt.QWidget.__init__(self, *args)

        self.thermo = Qwt.QwtThermo(self)
        self.thermo.setOrientation(Qt.Qt.Horizontal, Qwt.QwtThermo.NoScale)
        self.thermo.setRange(0.0, 1.0)
        self.thermo.setFillColor(Qt.Qt.green)

        label = Qt.QLabel("Tuning", self)
        label.setAlignment(Qt.Qt.AlignCenter)

        layout = Qt.QVBoxLayout(self)
        layout.setMargin(0)
        layout.addWidget(self.thermo)
        layout.addWidget(label)

        self.setFixedWidth(3 * label.sizeHint().width())
예제 #7
0
 def __init__(self,
              parent,
              min=0.0,
              max=1.0,
              step=0.0,
              alarm=None,
              orientation='horizontal',
              scale_position=None,
              border_width=1,
              pipe_width=10,
              fill_color='green',
              alarm_color='red',
              **kwargs):
     #signals = []
     pythics.libcontrol.Control.__init__(self, parent, **kwargs)
     # orientation selection
     if orientation == 'horizontal':
         orient = QtCore.Qt.Horizontal
     else:
         orient = QtCore.Qt.Vertical
     # scale position selection
     if scale_position == 'top':
         scalePos = Qwt.QwtThermo.TopScale
     elif scale_position == 'bottom':
         scalePos = Qwt.QwtThermo.BottomScale
     elif scale_position == 'left':
         scalePos = Qwt.QwtThermo.LeftScale
     elif scale_position == 'right':
         scalePos = Qwt.QwtThermo.RightScale
     else:
         scalePos = Qwt.QwtThermo.NoScale
     self._widget = Qwt.QwtThermo()
     self._widget.setOrientation(orient, scalePos)
     self._min = float(min)
     self._max = float(max)
     self._step = float(step)
     self._widget.setScale(self._min, self._max, self._step)
     self._widget.setRange(self._min, self._max)
     self._widget.setBorderWidth(border_width)
     self._widget.setPipeWidth(pipe_width)
     self._widget.setFillColor(QtGui.QColor(fill_color))
     self._widget.setAlarmColor(QtGui.QColor(alarm_color))
     if alarm is not None:
         self._widget.setAlarmLevel(float(alarm))
예제 #8
0
    def createEscale(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.setWindowModality(QtCore.Qt.ApplicationModal)
        Form.resize(721, 65)
        font = QtGui.QFont()
        font.setPointSize(8)
        font.setBold(True)
        font.setWeight(75)
        font.setStrikeOut(False)
        Form.setFont(font)
        Form.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        Form.setAcceptDrops(False)
        Form.setWhatsThis(_fromUtf8(""))
        Form.setLayoutDirection(QtCore.Qt.RightToLeft)
        Form.setAutoFillBackground(False)
        Form.setInputMethodHints(QtCore.Qt.ImhPreferUppercase)
        self.Thermo = Qwt.QwtThermo(Form)
        self.Thermo.setGeometry(QtCore.QRect(300, 10, 725, 70))
        font = QtGui.QFont()
        font.setPointSize(15)
        font.setBold(True)
        font.setWeight(75)
        self.Thermo.setFont(font)
        self.Thermo.setAutoFillBackground(False)
        self.Thermo.setStyleSheet(_fromUtf8("color: rgb(0, 0, 0);\n" ""))
        self.Thermo.setInputMethodHints(QtCore.Qt.ImhNone)
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        self.Thermo.setAlarmBrush(brush)
        self.Thermo.setAlarmColor(QtGui.QColor(255, 0, 0))
        self.Thermo.setAlarmEnabled(True)
        self.Thermo.setAlarmLevel(80.0)
        self.Thermo.setScalePosition(Qwt.QwtThermo.TopScale)
        self.Thermo.setBorderWidth(3)
        brush = QtGui.QBrush(QtGui.QColor(0, 85, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        self.Thermo.setFillBrush(brush)
        self.Thermo.setMaxValue(100.0)
        self.Thermo.setPipeWidth(20)
        self.Thermo.setProperty("value", 98.0)
        self.Thermo.setObjectName(_fromUtf8("Thermo"))

        return self
예제 #9
0
파일: RadioDemo.py 프로젝트: gyenney/Tools
    def __init__(self, title, parent):
        Qt.QWidget.__init__(self, parent)

        self.thermo = Qwt.QwtThermo(self)
        self.thermo.setPipeWidth(6)
        self.thermo.setRange(-40, 10)
        self.thermo.setFillColor(Qt.Qt.green)
        self.thermo.setAlarmColor(Qt.Qt.red)
        self.thermo.setAlarmLevel(0.0)
        self.thermo.setAlarmEnabled(True)

        label = Qt.QLabel(title, self)
        label.setAlignment(Qt.Qt.AlignTop | Qt.Qt.AlignLeft)

        layout = Qt.QVBoxLayout(self)
        layout.setMargin(0)
        layout.setSpacing(0)
        layout.addWidget(self.thermo, 10)
        layout.addWidget(label)
예제 #10
0
    def __init__(self, parent, elems=[]):
        QDockWidget.__init__(self, parent)
        self.model = None
        #self.connect(self, SIGNAL('tabCloseRequested(int)'), self.closeTab)
        #gb = QGroupBox("select")
        fmbox = QFormLayout()

        #fmbox.addRow("S-Range", self.lblRange)

        self.elemBox = QLineEdit()
        self.elemBox.setToolTip(
            "list elements within the range of the active plot.<br>"
            "Examples are '*', 'HCOR', 'BPM', 'QUAD', 'c*c20a', 'q*g2*'")
        self.elems = elems
        self.elemCompleter = QCompleter(elems)
        self.elemBox.setCompleter(self.elemCompleter)
        #self.elemBox.insertSeparator(len(self.elems))
        fmbox.addRow("Filter", self.elemBox)
        #self.refreshBtn = QPushButton("refresh")
        #fmbox.addRow(self.elemBox)

        self.fldGroup = QGroupBox()
        fmbox2 = QFormLayout()
        self.lblName = QLabel()
        self.lblField = QLabel()
        self.lblStep = QLabel()
        self.lblRange = QLabel()
        self.valMeter = Qwt.QwtThermo()
        self.valMeter.setOrientation(Qt.Horizontal, Qwt.QwtThermo.BottomScale)
        self.valMeter.setSizePolicy(QSizePolicy.MinimumExpanding,
                                    QSizePolicy.Fixed)
        self.valMeter.setEnabled(False)
        #fmbox2.addRow("Name", self.lblName)
        #fmbox2.addRow("Field", self.lblField)
        fmbox2.addRow("Step", self.lblStep)
        #fmbox2.addRow("Range", self.valMeter)
        fmbox2.addRow("Range", self.lblRange)
        #fmbox2.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow)
        fmbox2.setFieldGrowthPolicy(QFormLayout.AllNonFixedFieldsGrow)
        self.fldGroup.setLayout(fmbox2)

        self.model = None
        self.delegate = None
        self.tableview = ElementPropertyView()
        #self.tableview.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        self.tableview.setWhatsThis("double click cell to enter editing mode")
        fmbox.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow)
        vbox = QVBoxLayout()
        vbox.addLayout(fmbox)
        vbox.addWidget(self.tableview)
        vbox.addWidget(self.fldGroup)
        cw = QWidget(self)
        cw.setLayout(vbox)
        self.setWidget(cw)

        #self.connect(self.elemBox, SIGNAL("editingFinished()"),
        #             self.refreshTable)
        self.connect(self.elemBox, SIGNAL("returnPressed()"),
                     self.refreshTable)
        #self.connect(self.elemBox, SIGNAL("currentIndexChanged(QString)"),
        #             self.refreshTable)

        self.setWindowTitle("Element Editor")
        self.noTableUpdate = True
예제 #11
0
    def setupUi(self, RecorderControll):
        RecorderControll.setObjectName("RecorderControll")
        RecorderControll.resize(414, 82)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/neural_sim_client.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        RecorderControll.setWindowIcon(icon)
        self.lo_main = QtGui.QVBoxLayout(RecorderControll)
        self.lo_main.setObjectName("lo_main")
        self.lo_controls = QtGui.QHBoxLayout()
        self.lo_controls.setObjectName("lo_controls")
        self.ctl_input_position = Qwt5.QwtCounter(RecorderControll)
        self.ctl_input_position.setMinimumSize(QtCore.QSize(165, 0))
        self.ctl_input_position.setNumButtons(3)
        self.ctl_input_position.setProperty("basicstep", 5.0)
        self.ctl_input_position.setMaxValue(1000.0)
        self.ctl_input_position.setStepButton2(2)
        self.ctl_input_position.setStepButton3(5)
        self.ctl_input_position.setEditable(True)
        self.ctl_input_position.setObjectName("ctl_input_position")
        self.lo_controls.addWidget(self.ctl_input_position)
        spacerItem = QtGui.QSpacerItem(20, 0, QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Minimum)
        self.lo_controls.addItem(spacerItem)
        self.ctl_btn_move = QtGui.QPushButton(RecorderControll)
        self.ctl_btn_move.setObjectName("ctl_btn_move")
        self.lo_controls.addWidget(self.ctl_btn_move)
        self.ctl_btn_request = QtGui.QPushButton(RecorderControll)
        self.ctl_btn_request.setObjectName("ctl_btn_request")
        self.lo_controls.addWidget(self.ctl_btn_request)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.lo_controls.addItem(spacerItem1)
        self.lo_main.addLayout(self.lo_controls)
        self.lo_display = QtGui.QHBoxLayout()
        self.lo_display.setObjectName("lo_display")
        self.disp_lcd = QtGui.QLCDNumber(RecorderControll)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.disp_lcd.sizePolicy().hasHeightForWidth())
        self.disp_lcd.setSizePolicy(sizePolicy)
        self.disp_lcd.setMinimumSize(QtCore.QSize(100, 30))
        self.disp_lcd.setFrameShape(QtGui.QFrame.StyledPanel)
        self.disp_lcd.setFrameShadow(QtGui.QFrame.Sunken)
        self.disp_lcd.setLineWidth(3)
        self.disp_lcd.setMidLineWidth(3)
        self.disp_lcd.setSmallDecimalPoint(False)
        self.disp_lcd.setNumDigits(7)
        self.disp_lcd.setMode(QtGui.QLCDNumber.Dec)
        self.disp_lcd.setSegmentStyle(QtGui.QLCDNumber.Flat)
        self.disp_lcd.setProperty("value", 0.0)
        self.disp_lcd.setProperty("intValue", 0)
        self.disp_lcd.setObjectName("disp_lcd")
        self.lo_display.addWidget(self.disp_lcd)
        self.disp_meter = Qwt5.QwtThermo(RecorderControll)
        self.disp_meter.setMinimumSize(QtCore.QSize(300, 30))
        self.disp_meter.setScalePosition(Qwt5.QwtThermo.BottomScale)
        self.disp_meter.setFillColor(QtGui.QColor(0, 170, 0))
        self.disp_meter.setMaxValue(1000.0)
        self.disp_meter.setProperty("value", 500.0)
        self.disp_meter.setObjectName("disp_meter")
        self.lo_display.addWidget(self.disp_meter)
        self.lo_main.addLayout(self.lo_display)

        self.retranslateUi(RecorderControll)
        QtCore.QMetaObject.connectSlotsByName(RecorderControll)
예제 #12
0
    def __init__(self, lat, parent=None):
        super(ElementEditor, self).__init__(parent)
        #self.cadata = cadata
        #self.model = None
        self._lat = lat

        fmbox = QFormLayout()

        self.elemName = QLineEdit()
        self.elemName.setToolTip(
            "list elements within the range of the active plot.<br>"
            "Examples are '*', 'HCOR', 'BPM', 'QUAD', 'c*c20a', 'q*g2*'")
        self.elemName.setCompleter(
            QCompleter(["*", "BPM", "COR", "HCOR", "VCOR", "QUAD"]))

        self.elemField = QLineEdit()
        self.elemField.setToolTip(
            "Element fields separated by comma, space or both."
            "e.g. 'x, y'")

        #self.rangeSlider = qrangeslider.QRangeSlider()
        #self.rangeSlider.setMin(0)
        #self.rangeSlider.setMax(100)
        #self.rangeSlider.setRange(10, 70)
        #self.elemName.insertSeparator(len(self.elems))
        #fmbox.addRow("Range", self.rangeSlider)
        fmbox.addRow("Elements:", self.elemName)
        fmbox.addRow("Fields:", self.elemField)
        fmbox.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow)
        fmbox.setFieldGrowthPolicy(QFormLayout.AllNonFixedFieldsGrow)
        #self.refreshBtn = QPushButton("refresh")
        #fmbox.addRow(self.elemName)

        self._active_elem = None
        self._active_idx = None
        self._active_sp = None

        self.lblInfo = QLabel()

        self.gpCellEditor = QtGui.QGroupBox()
        fmbox2 = QFormLayout()
        self.lblNameField = QLabel()
        self.ledStep = QLineEdit(".1")
        self.ledStep.setValidator(QtGui.QDoubleValidator())
        self.spb1 = QtGui.QDoubleSpinBox()
        self.spb2 = QtGui.QDoubleSpinBox()
        self.spb5 = QtGui.QDoubleSpinBox()
        self.connect(self.spb5, SIGNAL("valueChanged(double)"),
                     self.spb2.setValue)
        self.connect(self.spb2, SIGNAL("valueChanged(double)"),
                     self.spb1.setValue)
        self.connect(self.spb1, SIGNAL("valueChanged(double)"),
                     self.spb5.setValue)
        self.connect(self.spb1, SIGNAL("valueChanged(double)"),
                     self.setActiveCell)

        self.lblPv = QLabel("")
        self.lblRange = QLabel("")
        self.valMeter = Qwt.QwtThermo()
        self.valMeter.setOrientation(Qt.Horizontal, Qwt.QwtThermo.BottomScale)
        self.valMeter.setSizePolicy(QSizePolicy.MinimumExpanding,
                                    QSizePolicy.Fixed)
        self.valMeter.setEnabled(False)
        self.ledSet = QLineEdit("")
        self.ledSet.setValidator(QtGui.QDoubleValidator())
        self.connect(self.ledSet, SIGNAL("returnPressed()"),
                     self.setDirectValue)
        fmbox2.addRow("Name:", self.lblNameField)
        #fmbox2.addRow("Range", self.valMeter)
        fmbox2.addRow("Range:", self.lblRange)
        fmbox2.addRow("PV Name:", self.lblPv)
        hbox = QtGui.QHBoxLayout()
        hbox.addWidget(self.ledSet)
        btnSet = QtGui.QPushButton("Set")
        self.connect(btnSet, SIGNAL("clicked()"), self.setDirectValue)
        hbox.addWidget(btnSet)
        fmbox2.addRow("Set New Value:", hbox)
        hbox = QtGui.QHBoxLayout()
        hbox.addWidget(self.ledStep)
        #
        btnu1 = QtGui.QPushButton()
        btnu1.setIcon(QtGui.QIcon(":/control_up1.png"))
        btnu1.setIconSize(QtCore.QSize(24, 24))
        self.connect(btnu1, SIGNAL("clicked()"),
                     partial(self.stepActiveCell, 1.0))
        hbox.addWidget(btnu1)
        btnd1 = QtGui.QPushButton()
        btnd1.setIcon(QtGui.QIcon(":/control_dn1.png"))
        btnd1.setIconSize(QtCore.QSize(24, 24))
        self.connect(btnd1, SIGNAL("clicked()"),
                     partial(self.stepActiveCell, -1.0))
        hbox.addWidget(btnd1)
        btnu5 = QtGui.QPushButton()
        btnu5.setIcon(QtGui.QIcon(":/control_up5.png"))
        btnu5.setIconSize(QtCore.QSize(24, 24))
        self.connect(btnu5, SIGNAL("clicked()"),
                     partial(self.stepActiveCell, 5.0))
        hbox.addWidget(btnu5)
        btnd5 = QtGui.QPushButton()
        btnd5.setIcon(QtGui.QIcon(":/control_dn5.png"))
        btnd5.setIconSize(QtCore.QSize(24, 24))
        self.connect(btnd5, SIGNAL("clicked()"),
                     partial(self.stepActiveCell, -5.0))
        hbox.addWidget(btnd5)
        fmbox2.addRow("Step Up/Down:", hbox)

        hbox = QtGui.QHBoxLayout()
        self.ledMult = QtGui.QLineEdit("1.0")
        hbox.addWidget(self.ledMult)
        btnx1 = QtGui.QPushButton()
        btnx1.setIcon(QtGui.QIcon(":/control_x1.png"))
        btnx1.setIconSize(QtCore.QSize(24, 24))
        self.connect(btnx1, SIGNAL("clicked()"), self.scaleActiveCell)
        hbox.addWidget(btnx1)
        btnx1 = QtGui.QPushButton()
        btnx1.setIcon(QtGui.QIcon(":/control_x1r.png"))
        btnx1.setIconSize(QtCore.QSize(24, 24))
        self.connect(btnx1, SIGNAL("clicked()"),
                     partial(self.scaleActiveCell, True))
        hbox.addWidget(btnx1)
        fmbox2.addRow("Multiply/Divide:", hbox)

        fmbox2.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow)
        fmbox2.setFieldGrowthPolicy(QFormLayout.AllNonFixedFieldsGrow)
        self.gpCellEditor.setLayout(fmbox2)
        self.gpCellEditor.setVisible(False)

        self.model = ElementPropertyTableModel()
        self.connect(self.model,
                     SIGNAL("toggleElementState(PyQt_PyObject, bool)"),
                     self.elementStateChanged)
        self.tableview = ElementPropertyView()
        self.connect(self.tableview, SIGNAL("clicked(QModelIndex)"),
                     self.editingCell)
        #self.delegate = ElementPropertyDelegate()
        #self.connect(self.delegate, SIGNAL("editingElement(PyQt_PyObject)"),
        #             self.updateCellInfo)

        #t2 = time.time()
        self.tableview.setModel(self.model)
        #self.tableview.setItemDelegate(self.delegate)
        #self.tableview.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        #self.tableview.setWhatsThis("double click cell to enter editing mode")
        #fmbox.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow)
        #self.model.loadElements(aphla.getElements("*")[:10])

        vbox = QVBoxLayout()
        vbox.addLayout(fmbox)
        vbox.addWidget(self.tableview)
        #vbox.addWidget(self.lblInfo)
        #vbox.addLayout(fmbox2)
        vbox.addWidget(self.gpCellEditor)
        self.setLayout(vbox)

        #self.connect(self.elemName, SIGNAL("editingFinished()"),
        #             self.refreshTable)
        self.connect(self.elemName, SIGNAL("returnPressed()"),
                     self._reload_elements)
        self.connect(self.elemField, SIGNAL("returnPressed()"),
                     self._reload_elements)
        #self.connect(self.elemName, SIGNAL("currentIndexChanged(QString)"),
        #             self.refreshTable)

        self.setWindowTitle("Element Editor")
        self.noTableUpdate = True
        self.resize(800, 600)
        self.setWindowFlags(Qt.Window)
예제 #13
0
    def initUI(self):
        
        self.setMinimumSize(660,450)
        self.setMaximumSize(660,450)
        
        self.setWindowTitle("Sensors")
        
        self.horizon=self.__createDial(0)
        self.horizon.resize(200,200)
        self.horizon.move(60,20) 

       	self.pitchLabel=QtGui.QLabel('Pitch:',self)
        self.pitchLabel.move(300,140)
        self.pitchValueLabel=QtGui.QLabel('-180',self)
        self.pitchValueLabel.resize(60,21)
        self.pitchValueLabel.move(340,140)
        
        self.rollLabel=QtGui.QLabel('Roll:',self)
        self.rollLabel.move(300,160)
        self.rollValueLabel=QtGui.QLabel('180',self)
        self.rollValueLabel.resize(60,21)
        self.rollValueLabel.move(340,160)

        self.compass=self.__createCompass(1)
        self.compass.resize(120,120)
        self.compass.move(280,10)
        self.compass.show()

        self.yawLabel=QtGui.QLabel('Yaw:',self)
        self.yawLabel.move(300,180)
        self.yawValueLabel=QtGui.QLabel('45',self)
        self.yawValueLabel.resize(60,21)
        self.yawValueLabel.move(340,180)

        self.altd=self.__createDial(2)
        self.altd.resize(150,150)
        self.altd.move(420,50)


        self.battery=Qwt.QwtThermo(self)
        self.battery.setMaxValue(100.0)
        self.battery.setMinValue(0.0)
        self.battery.setPipeWidth(10)
        
        self.battery.move(580,10)
        self.battery.resize(56,241)
        self.batteryLabel=QtGui.QLabel('Battery (%)',self)
        self.batteryLabel.move(580,251)

        self.velLinX=self.__createDial(1)
        self.velLinX.resize(150,150)
        self.velLinX.move(60,270)
        self.velXLabel = QtGui.QLabel('Linear X (m/s)',self)        
        self.velXLabel.move(95,420)

        
        self.velLinY=self.__createDial(1)
        self.velLinY.resize(150,150)
        self.velLinY.move(240,270)
        self.velYLabel = QtGui.QLabel('Linear Y (m/s)',self)
        self.velYLabel.move(275,420)             
        
        self.velLinZ=self.__createDial(1)
        self.velLinZ.resize(150,150)
        self.velLinZ.setLabel("8 m/s")
        self.velLinZ.move(420,270)
        self.velZLabel = QtGui.QLabel('Linear Z (m/s)',self)
        self.velZLabel.move(455,420)


        self.__speed_offset = 0.8
        self.__angle_offset = 0.05
        self.__gradient_offset = 0.005