예제 #1
0
    def __init__(self, dProject, parent=None):
        QtGui.QWidget.__init__(self, parent)

        self.labelTitle = QtGui.QLabel(
            self.tr("<center><b>REPORT</b></center>"))
        self.name = "Report"
        self.toolID = 1

        self.dProject = dProject
        self.dReport = createDReport(dProject)

        for key in self.dReport.keys():
            self.dReport[key] = self.dReport[key][::-1]

        self.saveTextButton = QtGui.QPushButton("Save as Text")

        self.connect(self.saveTextButton, QtCore.SIGNAL('clicked()'),
                     self.saveTextReport)

        self.layout0 = QtGui.QHBoxLayout()
        self.layout0.addWidget(self.saveTextButton)
        self.layout0.addStretch()

        N = len(self.dReport['seqNum'])
        self.table = QtGui.QTableWidget()
        self.table.setRowCount(N)
        self.table.setColumnCount(len(reportKeys))
        self.table.setHorizontalHeaderLabels(reportKeys)
        self.table.setSelectionBehavior(QtGui.QTableWidget.SelectRows)
        self.table.setSelectionMode(QtGui.QTableWidget.SingleSelection)
        self.font = QtGui.QFont()
        self.font.setPointSize(9)
        self.table.setFont(self.font)

        for i in range(N):
            for key in reportKeys:
                if key == 'seqRNA':
                    item = QtGui.QTableWidgetItem(self.dReport[key][i])
                elif key in ['seqNum', 'posSeq', 'posRX', 'posBG']:
                    item = QtGui.QTableWidgetItem("%d" % self.dReport[key][i])
                else:
                    item = QtGui.QTableWidgetItem("%.2f" %
                                                  self.dReport[key][i])
                col = reportKeys.index(key)
                self.table.setItem(int(i), int(col), item)
        self.table.resizeColumnsToContents()
        self.table.resizeRowsToContents()

        mainLayout = QtGui.QVBoxLayout()
        mainLayout.addWidget(self.labelTitle)
        mainLayout.addWidget(self.table)
        mainLayout.addLayout(self.layout0)
        self.setLayout(mainLayout)
예제 #2
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.setFixedSize(350, 450)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(0, 0, 350, 41))
        font = QtGui.QFont()
        font.setPointSize(20)
        font.setBold(True)
        font.setUnderline(False)
        font.setWeight(75)
        self.label.setFont(font)
        self.label.setScaledContents(False)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setEnabled(True)
        self.label_2.setGeometry(QtCore.QRect(25, 330, 300, 61))
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(12)
        sizePolicy.setVerticalStretch(12)
        sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setStrikeOut(False)
        font.setKerning(True)
        self.label_2.setFont(font)
        self.label_2.setAutoFillBackground(False)
        self.label_2.setStyleSheet("color: rgb(130, 142, 155);")
        self.label_2.setLocale(QtCore.QLocale(QtCore.QLocale.Ukrainian, QtCore.QLocale.Ukraine))
        self.label_2.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.label_2.setFrameShadow(QtWidgets.QFrame.Plain)
        self.label_2.setLineWidth(0)
        self.label_2.setMidLineWidth(0)
        self.label_2.setScaledContents(True)
        self.label_2.setAlignment(QtCore.Qt.AlignHCenter|QtCore.Qt.AlignTop)
        self.label_2.setWordWrap(True)
        self.label_2.setIndent(-1)
        self.label_2.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
        self.label_2.setObjectName("label_2")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(115, 290, 120, 32))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(115, 400, 120, 32))
        self.pushButton_2.setObjectName("pushButton_2")
        self.frame = QtWidgets.QFrame(self.centralwidget)
        self.frame.setGeometry(QtCore.QRect(0, 42, 351, 241))
        self.frame.setAcceptDrops(False)
        self.frame.setStyleSheet("image: url(:/logo/color.png);")
        self.frame.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        MainWindow.setCentralWidget(self.centralwidget)

        self.pushButton_2.hide()

        self.retranslateUi(MainWindow)
        self.app_functions(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
예제 #3
0
    def __init__(self, dProject,dProjRef,parent=None):
        QtGui.QWidget.__init__(self, parent)
        
        self.labelTitle = QtGui.QLabel(self.tr("<center><b>REGION OF INTEREST</b></center>"))
        self.name="Region of Interest"
        self.toolID=1
        self.hint = QtGui.QLabel(self.tr("HINT: Press Key 'F' button and click the axes to set From. "
                                         "Press Key 'T' button and click the axes  to set To" 
                                                                    ))
        self.hint.setWordWrap(True)
        self.font = QtGui.QFont() 
        self.font.setPointSize(10)
        self.hint.setFont(self.font)
        self.dProject=dProject
        self.dProjRef=dProjRef 
        self.dProjOut=deepcopy(dProject) 
        self.isToolApplied=False
        
        self.roi={}
        for key in self.dProject['chKeyRS']:
            self.roi[key]=[0,len(self.dProject['dData'][key])]
         
        labelFrom = QtGui.QLabel("From ")
        labelTo = QtGui.QLabel("To   ")
        
        labelPlus=QtGui.QLabel('(+) Reaction')
        self.spinBoxPlusFrom=QtGui.QSpinBox()
        self.spinBoxPlusTo=QtGui.QSpinBox()
        self.spinBoxPlusFrom.setRange(0,len(self.dProject['dData']['RX']))
        self.spinBoxPlusTo.setRange(0,len(self.dProject['dData']['RX']))
        self.spinBoxPlusTo.setValue(len(self.dProject['dData']['RX']))
        
        labelMinus=QtGui.QLabel('(-) Reaction')
        self.spinBoxMinusFrom=QtGui.QSpinBox()
        self.spinBoxMinusTo=QtGui.QSpinBox()
        self.spinBoxMinusFrom.setRange(0,len(self.dProject['dData']['BG']))
        self.spinBoxMinusTo.setRange(0,len(self.dProject['dData']['BG']))
        self.spinBoxMinusTo.setValue(len(self.dProject['dData']['BG']))

        layout0=myGridLayout()
        layout0.addWidget(labelFrom,0,1)
        layout0.addWidget(labelTo,0,2)
        layout0.addWidget(labelPlus,1,0)
        layout0.addWidget( self.spinBoxPlusFrom,1,1)
        layout0.addWidget( self.spinBoxPlusTo,1,2)
        layout0.addWidget(labelMinus,2,0)
        layout0.addWidget( self.spinBoxMinusFrom,2,1)
        layout0.addWidget( self.spinBoxMinusTo,2,2)
        
        self.groupBox0=QtGui.QGroupBox()
        self.groupBox0.setLayout(layout0)
        
        self.buttunAuto=QtGui.QPushButton('Auto ROI by Reference')
        self.connect(self.buttunAuto,QtCore.SIGNAL("clicked()"),self.autoFindROI)
        
        if not self.dProject['isRef']:
            self.buttunAuto.setEnabled(False)
        self.buttonBox = ToolButton()
        
        mainLayout=QtGui.QVBoxLayout()
        mainLayout.addWidget(self.labelTitle)
        mainLayout.addWidget(self.groupBox0)
        mainLayout.addWidget(self.buttunAuto)
        
        mainLayout.addWidget(self.hint)
        mainLayout.addStretch()
        mainLayout.addWidget(self.buttonBox)
        self.setLayout(mainLayout)
예제 #4
0
    def __init__(self, parent=None):
        QtGui.QListWidget.__init__(self, parent)

        font = QtGui.QFont("Courier", 11)
        font.setFixedPitch(True)
        self.setFont(font)