Esempio n. 1
0
    def setupViewingTools(self):
        context = yield self.parent.cxn.context()
        self.datavaultwidget = DataVaultWidget(self, context)
        self.datavaultwidget.populateList()
        self.bottomPanel4 = QtGui.QHBoxLayout()
        self.bottomPanel4.addWidget(self.datavaultwidget)
        self.layout.addLayout(self.bottomPanel4)

        cameraCanvasLayout = QtGui.QVBoxLayout()

        self.bottomPanel4.addLayout(cameraCanvasLayout)

        self.cameraCanvas = CameraCanvas(self)
        self.cameraCanvas.show()
        ntbCamera = NavigationToolbar(self.cameraCanvas, self)

        cameraCanvasLayout.addWidget(self.cameraCanvas)
        cameraCanvasLayout.addWidget(ntbCamera)

        analysisCanvasLayout = QtGui.QVBoxLayout()

        self.bottomPanel4.addLayout(analysisCanvasLayout)

        self.analysisCanvas = AnalysisCanvas(self)
        self.analysisCanvas.show()
        ntbAnalysis = NavigationToolbar(self.analysisCanvas, self)

        analysisCanvasLayout.addWidget(self.analysisCanvas)
        self.parametersEdit = QtGui.QLineEdit(readOnly=True)
        analysisCanvasLayout.addWidget(self.parametersEdit)
        analysisCanvasLayout.addWidget(ntbAnalysis)
Esempio n. 2
0
 def __init__(self, parent, context):
     QtGui.QMainWindow.__init__(self)
     self.parent = parent
     self.context = context
     self.parameterWindows = {}
     self.manuallyLoaded = True
     self.setWindowTitle("Live Grapher!")
     self.main_widget = QtGui.QWidget(self)
     self.setCentralWidget(self.main_widget)
     hbl = QtGui.QHBoxLayout(self.main_widget)
     self.datavaultwidget = DataVaultWidget(self, context)
     self.datavaultwidget.populateList()
     #self.datavaultwidget.show()
     hbl.addWidget(self.datavaultwidget)
Esempio n. 3
0
 def __init__(self, parent, context, reactor):
     QtGui.QWidget.__init__(self)
     self.parent = parent
     self.context = context
     self.reactor = reactor
     self.parameterWindows = {}
     self.manuallyLoaded = True
     self.setWindowTitle("Live Grapher!")
     hbl = QtGui.QHBoxLayout()
     self.setLayout(hbl)
     self.datavaultwidget = DataVaultWidget(self, context)
     self.datavaultwidget.populateList()
     #self.datavaultwidget.show()
     hbl.addWidget(self.datavaultwidget)
Esempio n. 4
0
    def initGui( self ):

        dvWidget = self.dvWidget = DataVaultWidget( self )
        self.setCentralWidget( dvWidget )
        
        #### menu bar doesn't seem to work
        connectMenu = menuBar.addMenu( '&Grapher' )
        connectAction = self.connectAction = connectMenu.addAction( '&Connect' )
        connectAction.triggered.connect( lambda _: connect() )

        lrSigs.connecting.connect( lambda: connectAction.setEnabled( False ) )
        lrSigs.failed.connect( lambda: connectAction.setEnabled( True ) )
        lrSigs.disconnected.connect( lambda: connectAction.setEnabled( True ) )

        selectDVAction = self.selectDVAction = connectMenu.addAction( 'Select &Data Vault' )
        selectDVAction.triggered.connect( dvWidget.browser.selectDataVault )
        selectDVAction.setEnabled( False )

        lrSigs.connected.connect( lambda: selectDVAction.setEnabled( True ) )
        lrSigs.failed.connect( lambda: selectDVAction.setEnabled( False ) )
        lrSigs.disconnected.connect( lambda: selectDVAction.setEnabled( False ) )
Esempio n. 5
0
    def __init__(self, parent, context):
        self.parent = parent
        self.context = context
        self.parameterWindows = {}
        self.datasetCheckboxes = {}
        self.datasetCheckboxCounter = 0
        self.manuallyLoaded = True
        QtGui.QMainWindow.__init__(self)
        self.setWindowTitle("Live Grapher")
        self.main_widget = QtGui.QWidget(self)
        self.setCentralWidget(self.main_widget)
        # create a vertical box layout widget
        grapherLayout = QtGui.QVBoxLayout()
        #vbl.addStretch(1)
        # instantiate our Matplotlib canvas widget
        self.qmc = Qt4MplCanvas(self.main_widget, self)
        # instantiate the navigation toolbar
        ntb = NavigationToolbar(self.qmc, self.main_widget)

        # Layout that involves the canvas, toolbar, graph options...etc.
        grapherLayout.addWidget(ntb)
        grapherLayout.addWidget(self.qmc)

        # Main horizontal layout
        mainLayout = QtGui.QHBoxLayout(self.main_widget)
        self.datavaultwidget = DataVaultWidget(self, self.context)
        self.datavaultwidget.setMaximumWidth(180)
        self.datavaultwidget.populateList()
        # Add the datavault widget
        # Layout that controls datasets
        datasetLayout = QtGui.QVBoxLayout()
        datasetLayout.addWidget(self.datavaultwidget)

        mainLayout.addLayout(datasetLayout)
        mainLayout.addLayout(grapherLayout)

        # Layout for keeping track of datasets on a graph
        self.datasetCheckboxListWidget = QtGui.QListWidget()
        self.datasetCheckboxListWidget.setMaximumWidth(180)
        datasetLayout.addWidget(self.datasetCheckboxListWidget)

        # set the focus on the main widget
        self.main_widget.setFocus()
        # add menu
        self.create_menu()
        # checkbox to change boundaries
        self.cb1 = QtGui.QCheckBox('AutoScroll', self)
        #self.cb1.move(290, 23)
        self.cb1.clicked.connect(self.autoscrollSignal)
        # checkbox to overlay new dataset
        self.cb2 = QtGui.QCheckBox('Overlay', self)
        #self.cb2.move(500, 35)
        # checkbox to toggle AutoFit
        self.cb3 = QtGui.QCheckBox('AutoFit', self)
        #self.cb3.move(290, 39)
        self.cb3.toggle()
        self.cb3.clicked.connect(self.autofitSignal)
        # button to fit data on screen
        fitButton = QtGui.QPushButton("Fit", self)
        fitButton.setGeometry(QtCore.QRect(0, 0, 30, 30))
        #fitButton.move(390, 32)
        fitButton.clicked.connect(self.fitDataSignal)

        # Layout that controls graph options
        buttonBox = QtGui.QHBoxLayout()
        buttonBox.addWidget(self.cb1)
        buttonBox.addWidget(self.cb3)
        buttonBox.addWidget(self.cb2)
        buttonBox.addWidget(fitButton)

        grapherLayout.addLayout(buttonBox)