def add_elements(self, checked=[]):
        '''Add element checkboxes and set as checked if in checked.'''
        for idx, el in enumerate(self.elements):
            elbox = QtGui.QCheckBox(el)
            elbox.setChecked(el in checked)
            elbox.stateChanged.connect(self.handle_element_select)
            self.el_sel.layout().addWidget(elbox, idx, 0)
            clrbtn = pg.ColorButton()
            clrbtn.setObjectName(el)
            clrbtn.sigColorChanged.connect(self.handle_element_select)
            self.el_sel.layout().addWidget(clrbtn, idx, 1)
            pvbox = QtGui.QCheckBox()
            pvbox.stateChanged.connect(self.handle_element_select)
            self.el_sel.layout().addWidget(pvbox, idx, 2)

        # Position/velocity dimension selector.
        cb = QtGui.QComboBox()
        cb.addItem('y')
        cb.addItem('x')
        cb.currentIndexChanged.connect(self.handle_element_select)
        self.el_sel.layout().addWidget(cb)
        self.pos_vel_dim_cb = cb
        xyzcb = QtGui.QComboBox()
        xyzcb.setObjectName('xyz_map')
        xyzcb.addItem('xyz')
        xyzcb.addItem('xzy')
        xyzcb.addItem('yxz')
        xyzcb.addItem('yzx')
        xyzcb.addItem('zxy')
        xyzcb.addItem('zyx')
        xyzcb.currentIndexChanged.connect(self.handle_xyz_map_select)
        self.el_sel.layout().addWidget(xyzcb)
        self.xyz_cb = xyzcb
    def __init__(self, datadir, *args, **kwargs):
        super(DataLoaderWidget, self).__init__(*args, **kwargs)
        self.setStyleSheet('background-color:white;')
        self.data_loader = EmaEcogDataLoader(datadir)
        layout = QtGui.QVBoxLayout()

        self.spkr = QtGui.QComboBox()
        self.utt = QtGui.QComboBox()
        self.rep = QtGui.QComboBox()
        self.el_sel = QtGui.QGroupBox('Elements')
        self.el_sel.setLayout(QtGui.QGridLayout())
        self.add_speakers()

        self.load_button = QtGui.QPushButton('Load utt')

        self.spkr.currentTextChanged.connect(self.speaker_selected)
        self.utt.currentTextChanged.connect(self.utterance_selected)
        self.load_button.clicked.connect(self.load_data)

        layout.addWidget(self.spkr)
        layout.addWidget(self.utt)
        layout.addWidget(self.rep)
        layout.addWidget(self.load_button)
        layout.addWidget(self.el_sel)
        self.setLayout(layout)
Esempio n. 3
0
    def __init__(self):
        super().__init__("Control")
        self.widget = pg.LayoutWidget()

        self.quitBtn = QtGui.QPushButton("quit")
        self.quitBtn.setStyleSheet(
            "QPushButton {color:#f9ffd9; background:#ed2a0c;}"
            "QPushButton:disabled {color:#8f8f8f; background:#bfbfbf;}")
        self.quitBtn.setFont(QtGui.QFont("serif", 16))

        self.valueBw = QtGui.QTextBrowser()
        self.valueBw.setMaximumHeight(90)
        self.valueBw.setMinimumWidth(300)
        self.valueBw.setCurrentFont(QtGui.QFont("Courier New"))

        # self.scaleBtn = ScaleButtons()

        self.scaleBtn = QtGui.QComboBox()
        self.scaleBtn.setFont(QtGui.QFont("serif", 18))
        items = ["20 s", "60 sec", "5 min", "15 min", "30 min", "1 hr", "Full"]
        sizes = [20, 60, 5 * 60, 15 * 60, 30 * 60, 60 * 60, -1]
        [self.scaleBtn.addItem(i) for i in items]
        self.sampling_windows = {i: j for i, j in zip(items, sizes)}

        self.IGmode = QtGui.QComboBox()
        items = ["Torr", "Pa"]
        [self.IGmode.addItem(i) for i in items]
        self.IGmode.setFont(QtGui.QFont("serif", 18))

        self.IGrange = QtGui.QSpinBox()
        self.IGrange.setMinimum(-8)
        self.IGrange.setMaximum(-3)
        self.IGrange.setMinimumSize(QtCore.QSize(60, 60))
        self.IGrange.setSingleStep(1)
        self.IGrange.setStyleSheet("QSpinBox::up-button   { width: 50px; }\n"
                                   "QSpinBox::down-button { width: 50px;}\n"
                                   "QSpinBox {font: 26pt;}")

        self.qmsSigSw = QmsSwitch()
        self.FullNormSW = MySwitch()
        self.OnOffSW = OnOffSwitch()
        self.OnOffSW.setFont(QtGui.QFont("serif", 16))

        # Analog Gauge to show Temperature
        self.gaugeT = AnalogGaugeWidget()
        self.gaugeT.set_MinValue(0)
        self.gaugeT.set_MaxValue(400)
        self.gaugeT.set_total_scale_angle_size(180)
        self.gaugeT.set_start_scale_angle(180)
        self.gaugeT.set_enable_value_text(False)

        self.__setLayout()
Esempio n. 4
0
 def __init__(self, param, depth):
     ParameterItem.__init__(self, param, depth)
     self.updateDepth(depth) 
             
     self.addItem = None
     if 'addText' in param.opts:
         addText = param.opts['addText']
         if 'addList' in param.opts:
             self.addWidget = QtGui.QComboBox()
             self.addWidget.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
             self.updateAddList()
             self.addWidget.currentIndexChanged.connect(self.addChanged)
         else:
             self.addWidget = QtGui.QPushButton(addText)
             self.addWidget.clicked.connect(self.addClicked)
         w = QtGui.QWidget()
         l = QtGui.QHBoxLayout()
         l.setContentsMargins(0,0,0,0)
         w.setLayout(l)
         l.addWidget(self.addWidget)
         l.addStretch()
         #l.addItem(QtGui.QSpacerItem(200, 10, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum))
         self.addWidgetBox = w
         self.addItem = QtGui.QTreeWidgetItem([])
         self.addItem.setFlags(QtCore.Qt.ItemIsEnabled)
         ParameterItem.addChild(self, self.addItem)
Esempio n. 5
0
    def __init__(self, parent, loadname=''):
        super(SaveWidget, self).__init__()

        self.parent = parent
        self.data_path = parent.data_path

        self.save_line = QtGui.QLineEdit(self)
        self.save_button = QtGui.QPushButton(self)
        self.save_button.setText('Save')

        self.load_combo = QtGui.QComboBox(self)
        self.load_combo.addItem('')
        for file in glob.glob(os.path.join(self.data_path, '*.json')):
            [filepath, filename] = os.path.split(file)
            self.load_combo.addItem(str(filename).replace('.json', ''))
        self.load_button = QtGui.QPushButton()
        self.load_button.setText('Load')

        # Layout
        self.layout = QtGui.QVBoxLayout()
        self.save_file_layout = QtGui.QHBoxLayout()
        self.save_file_layout.addWidget(self.save_line)
        self.save_file_layout.addWidget(self.save_button)
        self.load_layout = QtGui.QHBoxLayout()
        self.load_layout.addWidget(self.load_combo, 1)
        self.load_layout.addWidget(self.load_button)
        self.layout.addLayout(self.save_file_layout)
        self.layout.addLayout(self.load_layout)

        # Connections
        self.save_button.clicked.connect(self.save)
        self.load_button.clicked.connect(self.load)
Esempio n. 6
0
    def __init__(self, parent=None):
        super().__init__(parent=parent)
        self.setupUi(self)

        self.okButton.clicked.connect(self.accept)
        self.cancelButton.clicked.connect(self.reject)

        self.choices = {}

        plotframe = self.parent().tabWidget.currentWidget()
        if plotframe is None:
            return

        for n, curvename in enumerate(plotframe.curves.keys()):
            combo = QtGui.QComboBox()
            combo.addItems([ft.value for ft in CycleId])
            curveitem = QtGui.QTableWidgetItem(curvename)

            self.table.insertRow(n)
            self.table.setItem(n, 0, curveitem)
            self.table.setCellWidget(n, 1, combo)
            self.choices[curvename] = combo

        self.table.horizontalHeader().setResizeMode(
            QtGui.QHeaderView.ResizeToContents)
Esempio n. 7
0
    def Add_Continuous_Channel(self):
        # totalNumber = self.dock_area.findAll()
        # print(totalNumber)
        # dock_index = len(totalNumber[0])
        # if len(totalNumber[0]) is 0:
        #     dock_index = 1
        self.continuous_counter = self.continuous_counter + 1
        continuous_dock = Dock(
            "Continuous " +
            str(self.continuous_counter))  # TODO: DockArea or Dock?
        raw_dock = Dock("Raw " + str(self.continuous_counter))
        continuous_layout = pg.LayoutWidget()
        raw_layout = pg.LayoutWidget()

        combobox = QtGui.QComboBox()
        for ch_id in range(NCHANNELS):
            combobox.addItem("{}".format(ch_id + 1))
        # TODO: combobox.?action.connect(self.get_dock_info)
        spk_plot = pg.PlotWidget(name="SPK")
        spk_plot.plotItem.plot([])
        raw_plot = pg.PlotWidget(name="RAW")
        raw_plot.plotItem.plot([])

        continuous_layout.addWidget(combobox)
        continuous_layout.addWidget(spk_plot)  # TODO: Add spk_dock
        raw_layout.addWidget(raw_plot)  # TODO: Add raw_dock

        continuous_dock.addWidget(continuous_layout)
        self.dock_area1.addDock(continuous_dock, position='bottom')
        raw_dock.addWidget(raw_layout)
        self.dock_area2.addDock(raw_dock, position='bottom')
        self.spk_buffer = np.concatenate((self.spk_buffer, np.nan * np.ones(
            (1, self.spk_buffer.shape[1]))),
                                         axis=0)
        self.get_dock_info()
 def add_subject(self, setup=None, subject=None):
     '''Add row to table allowing extra subject to be specified.'''
     setup_cbox = QtGui.QComboBox()
     setup_cbox.addItems(self.available_setups if self.
                         available_setups else ['select setup'])
     setup_cbox.activated.connect(self.update_available_setups)
     remove_button = QtGui.QPushButton('remove')
     ind = QtCore.QPersistentModelIndex(self.model().index(
         self.n_subjects, 2))
     remove_button.clicked.connect(lambda: self.remove_subject(ind.row()))
     add_button = QtGui.QPushButton('add')
     add_button.clicked.connect(self.add_subject)
     self.setCellWidget(self.n_subjects, 0, setup_cbox)
     self.setCellWidget(self.n_subjects, 2, remove_button)
     self.insertRow(self.n_subjects + 1)
     self.setCellWidget(self.n_subjects + 1, 2, add_button)
     if setup:
         cbox_set_item(setup_cbox, setup)
     if subject:
         subject_item = QtGui.QTableWidgetItem()
         subject_item.setText(subject)
         self.setItem(self.n_subjects, 1, subject_item)
     self.n_subjects += 1
     self.update_available_setups()
     null_resize(self)
Esempio n. 9
0
    def build_config_frame(self):
        self.config_frame = pg.QtGui.QFrame()
        self.config_layout = pg.QtGui.QGridLayout()
        self.config_frame.setLayout(self.config_layout)
        self.server_button = pg.QtGui.QPushButton("Start Server")
        self.connect_button = pg.QtGui.QPushButton("Connect")
        self.webcam_button = pg.QtGui.QPushButton("Camera")
        self.video_button = pg.QtGui.QPushButton("Video")
        self.ROI_button = pg.QtGui.QPushButton("ROI")
        self.video_slider = QtGui.QSlider(QtCore.Qt.Horizontal)
        self.server_combo = QtGui.QComboBox()

        self.server_combo.addItems(list(self.settings['servers'].keys()))

        self.config_layout.addWidget(QtGui.QLabel("Server:"))
        self.config_layout.addWidget(self.server_combo, 0, 0)
        self.config_layout.addWidget(self.connect_button, 0, 1)
        self.config_layout.addWidget(self.webcam_button, 0, 2)
        self.config_layout.addWidget(self.video_button, 0, 3)
        self.config_layout.addWidget(self.ROI_button, 0, 4)
        self.config_layout.addWidget(self.server_button, 0, 5)
        self.config_layout.addWidget(self.video_slider, 1, 0, 1, 3)
        self.video_slider.sliderReleased.connect(self.frame_slider_changed)

        self.server_button.clicked.connect(self.server_clicked)
        self.webcam_button.clicked.connect(self.webcam_clicked)
        self.video_button.clicked.connect(self.video_clicked)
        self.ROI_button.clicked.connect(self.ROI_clicked)
        self.connect_button.clicked.connect(self.connect_clicked)

        self.ROI_button.setCheckable(True)

        return self.config_frame
Esempio n. 10
0
 def create_form_group_box(self):
     self.form_group_box = QtGui.QGroupBox("Form Layout")
     form_layout = QtGui.QFormLayout()
     form_layout.addRow(QtGui.QLabel("Line 1:"), QtGui.QLineEdit())
     form_layout.addRow(QtGui.QLabel("Line 2:"), QtGui.QComboBox())
     form_layout.addRow(QtGui.QLabel("Line 3:"), QtGui.QSpinBox())
     self.form_group_box.setLayout(form_layout)
Esempio n. 11
0
    def refreshCandlestickBar(self):

        closest_list = sohu.get_closest_list(self.code)

        if hasattr(self, 'closest_label'):
            self.klinebar.removeAction(self.closest_label)
            del self.closest_label
        if hasattr(self, 'closest_box'):
            self.klinebar.removeAction(self.closest_box)
            del self.closest_box
        if hasattr(self, 'closest_result'):
            self.klinebar.removeAction(self.closest_result)
            del self.closest_result

        self.closest_label = self.klinebar.addWidget(QtGui.QLabel("十支最相似股票:"))

        if closest_list is not None:
            self.closest_box = QtGui.QComboBox(self)

            closest_list = closest_list[1:11]
            zs_or_cn = self.code[:2]
            basics = sohu.get_stock_basics(
            ) if zs_or_cn == 'cn' else sohu.get_index_basics()
            names = [basics.loc[i[-6:]]['name'] for i in closest_list]

            self.closest_box.activated.connect(
                lambda offset: self.closest_data_load(closest_list[offset],
                                                      names[offset]))

            for i in names:
                self.closest_box.addItem(i)
            self.closest_box = self.klinebar.addWidget(self.closest_box)
        else:
            self.closest_result = self.klinebar.addWidget(QtGui.QLabel("无数据"))
    def __init__(self, mmc,debug=False):
        r"""MMPropertyBrowser(mmc)
        mmc is a micromanager core object"""

        QtGui.QWidget.__init__(self)
        self.layout = QtGui.QVBoxLayout()
        self.mmc = mmc
        if debug:
            self.mmc.enableStderrLog(debug)
            self.mmc.enableDebugLog(debug)
        self.devices = self.mmc.getLoadedDevices()
        self.devicepulldown = QtGui.QComboBox(self)
        self.devicepulldown.addItems(self.devices)
        self.devicepulldown.currentIndexChanged.connect(self.deviceChanged)

        self.propTable = QtGui.QTableWidget(self)
        device0 = self.devices[0]
        self.fillPropTable(device0)

        self.layout.addWidget(self.devicepulldown)
        self.layout.addWidget(self.propTable)

        self.setLayout(self.layout)
        self.resize(300, 500)
        self._dialog = None
Esempio n. 13
0
    def __init__(self, *args, **kwargs):
        super(DownCtrl, self).__init__(*args, **kwargs)

        self.layout = QtGui.QGridLayout()
        self.setLayout(self.layout)

        # MODE SELECTOR
        modeSelector = QtGui.QComboBox()
        modeSelector.addItem('Black')
        modeSelector.addItem('None')
        modeSelector.addItem('Features')
        modeSelector.addItem('Labels')
        modeSelector.addItem('Probabilities')
        self.layout.addWidget(modeSelector)

        # color change button
        self.colorChangeButton = pg.ColorButton('Edge Color')
        self.layout.addWidget(self.colorChangeButton)

        # Edge Size Slide
        self.brushSizeSlider = QtGui.QSlider(orientation=QtCore.Qt.Horizontal)
        self.layout.addWidget(self.brushSizeSlider)

        # Save load LABELS
        self.saveLabelsButton = QtGui.QPushButton('save Labels')
        self.layout.addWidget(self.saveLabelsButton)
        self.loadLabelsButton = QtGui.QPushButton('load Labels')
        self.layout.addWidget(self.loadLabelsButton)
Esempio n. 14
0
    def generate_col_box(self):
        col_box = QtWidgets.QGroupBox()
        col_vboxlay = QtWidgets.QVBoxLayout()
        col_box.setLayout(col_vboxlay)
        self.text_box = QtGui.QTextItem()
        # col_vboxlay.addWidget(self.text_box)
        self.col_option_box = QtGui.QComboBox()
        cols = colors.COLOR_SCHEMES
        self.col_option_box.addItems(cols)
        rev_cols = [f'{col}-rev' for col in cols]
        self.col_option_box.addItems(rev_cols)
        self.col_option_box.currentIndexChanged.connect(self.col_box_selection_changed)
        col_vboxlay.addWidget(self.col_option_box)
        self.bal_box = QtGui.QCheckBox("Balanced?")
        col_vboxlay.addWidget(self.bal_box)
        self.bal_box.stateChanged.connect(self.clicked_bal_box)
        self.cmin = QtGui.QLineEdit()
        col_vboxlay.addWidget(self.cmin)
        self.cmax = QtGui.QLineEdit()
        col_vboxlay.addWidget(self.cmax)
        self.crange_but = QtGui.QPushButton("Update range")
        self.crange_but.clicked.connect(self.change_crange)
        col_vboxlay.addWidget(self.crange_but)


        self.col_box = col_box
Esempio n. 15
0
    def init_widgets(self):
        lbl_nbins = QtGui.QLabel('nbins:')
        self.combo_nbins = QtGui.QComboBox()
        for i in range(11):
            self.combo_nbins.addItem('%dk' % (1 << i))
        self.combo_nbins.setCurrentIndex(6)

        lbl_nacc = QtGui.QLabel('nacc:')
        self.edit_nacc = QtGui.QSpinBox()

        lbl_tacc = QtGui.QLabel('tacc:')
        self.lbl_tacc = QtGui.QLabel('0.123s')

        hb1 = QtGui.QHBoxLayout()
        hb1.addWidget(lbl_nbins)
        hb1.addWidget(self.combo_nbins)

        hb2 = QtGui.QHBoxLayout()
        hb2.addWidget(lbl_nacc)
        hb2.addWidget(self.edit_nacc)

        hb3 = QtGui.QHBoxLayout()
        hb3.addWidget(lbl_tacc)
        hb3.addWidget(self.lbl_tacc)

        self.rb_log = QtGui.QRadioButton("L&ogarithm")
        self.rb_lin = QtGui.QRadioButton("L&inear")
        self.rb_log.toggle()
        self.rb_log.toggled.connect(self.on_logarithm_yscale)
        self.btn_program = QtGui.QPushButton("Con&figure")
        self.btn_program.clicked.connect(self.on_config)
        self.btn_capture = QtGui.QPushButton("Ca&pture")
        self.btn_capture.clicked.connect(self.on_capture)
        self.btn_clear = QtGui.QPushButton("&Clear")
        self.btn_clear.clicked.connect(self.on_clear)
        self.btn_reset = QtGui.QPushButton("&Reset")
        self.btn_reset.clicked.connect(self.on_reset)

        vbox = QtGui.QVBoxLayout()
        vbox.addLayout(hb1)
        vbox.addLayout(hb2)
        vbox.addLayout(hb3)
        vbox.addStretch(10)
        vbox.addWidget(self.rb_log)
        vbox.addWidget(self.rb_lin)
        vbox.addStretch(1)
        vbox.addWidget(self.btn_program)
        vbox.addWidget(self.btn_capture)
        vbox.addWidget(self.btn_clear)
        vbox.addWidget(self.btn_reset)

        self.plotwin = pg.GraphicsLayoutWidget()

        hbox = QtGui.QHBoxLayout()
        hbox.addWidget(self.plotwin)
        hbox.addSpacing(15)
        hbox.addLayout(vbox)

        self.setLayout(hbox)
Esempio n. 16
0
    def __init__(self, copts=None):
        self.app = QtGui.QApplication(sys.argv)
        super(FEMGUI, self).__init__()

        self.o3res = None
        self.xmag = 1
        self.ymag = 1
        self.t_scale = 1

        self.setWindowTitle('FEM viewer')

        self.mainLayout = QtGui.QGridLayout()
        # self.mainLayout = QtWidgets.QVBoxLayout()
        self.setLayout(self.mainLayout)
        hbox = QtWidgets.QGroupBox()
        hboxlay = QtWidgets.QHBoxLayout()
        hbox.setLayout(hboxlay)
        self.mainLayout.addWidget(hbox, 0, 0)

        self.reset_timer_button = QtGui.QPushButton("Reset timer")
        self.pause_button = QtGui.QPushButton("Pause/Resume")
        self.step10_backward_button = QtGui.QPushButton("-10 steps")
        self.step_backward_button = QtGui.QPushButton("-1 step")
        self.step_forward_button = QtGui.QPushButton("+1 step")
        self.step10_forward_button = QtGui.QPushButton("+10 steps")

        hboxlay.addWidget(self.reset_timer_button)
        hboxlay.addWidget(self.pause_button)
        hboxlay.addWidget(self.step10_backward_button)
        hboxlay.addWidget(self.step_backward_button)
        hboxlay.addWidget(self.step_forward_button)
        hboxlay.addWidget(self.step10_forward_button)

        self.cb = QtGui.QComboBox()
        self.cb.addItem("Default")
        self.cb.currentIndexChanged.connect(self.selectionchange)
        hboxlay.addWidget(self.cb)

        self.qt_connections()

        self.win = pg.PlotWidget()
        # self.win.

        self.mainLayout.addWidget(self.win, 1, 0)
        self.generate_col_box()
        self.mainLayout.addWidget(self.col_box, 1, 1)
        self.hbox = hbox

        self.setGeometry(10, 10, 1000, 600)

        self.timer = QtCore.QTimer(self)

        # self.plotItem = self.plotwidget.addPlot(title="Nodes")
        self.fem_plot = FEMPlot(self.win.plotItem, self.timer, copts=copts)
        self.show()
        self.curr_pm = 'Default'
        self.copts_eles = {'4-all': {'Default': {}}}
Esempio n. 17
0
 def addcombo(label: str, options: List[str]) -> QtGui.QComboBox:
     nonlocal row
     combo = QtGui.QComboBox()
     for opt in options:
         combo.addItem(opt)
     layout.addWidget(makelabel(label), row, 0)
     layout.addWidget(combo, row, 1)
     row += 1
     return combo
    def __init__(self, parent, var_name=None, row_data=None):
        self.parent = parent
        # buttons
        self.up_button = QtGui.QPushButton("⬆️")
        self.down_button = QtGui.QPushButton("⬇️")
        self.remove_button = QtGui.QPushButton("remove")
        self.remove_button.setIcon(QtGui.QIcon("gui/icons/remove.svg"))
        # line edits
        self.display_name = QtGui.QLineEdit()
        self.spin_min = QtGui.QLineEdit()
        self.spin_min.setAlignment(QtCore.Qt.AlignCenter)
        self.spin_max = QtGui.QLineEdit()
        self.spin_max.setAlignment(QtCore.Qt.AlignCenter)
        self.spin_step = QtGui.QLineEdit()
        self.spin_step.setAlignment(QtCore.Qt.AlignCenter)
        self.suffix = QtGui.QLineEdit()
        self.suffix.setAlignment(QtCore.Qt.AlignCenter)
        self.hint = QtGui.QLineEdit()
        # combo boxes
        self.variable_cbox = QtGui.QComboBox()
        self.variable_cbox.activated.connect(
            lambda: self.parent.clear_label(self.display_name.text()))
        self.variable_cbox.addItems(["     select variable     "] +
                                    self.parent.parent.available_vars)
        self.input_type_combo = QtGui.QComboBox()
        self.input_type_combo.activated.connect(self.parent.update_available)
        self.input_type_combo.addItems(
            ["line edit", "checkbox", "spinbox", "slider"])

        self.column_order = (
            self.up_button,
            self.down_button,
            self.variable_cbox,
            self.display_name,
            self.input_type_combo,
            self.spin_min,
            self.spin_max,
            self.spin_step,
            self.suffix,
            self.hint,
            self.remove_button,
        )
        if var_name:
            self.load_vals_from_dict(var_name, row_data)
 def add_variable(self, var_dict=None):
     '''Add a row to the variables table.'''
     variable_cbox = QtGui.QComboBox()
     variable_cbox.activated.connect(self.update_available)
     subject_cbox = QtGui.QComboBox()
     subject_cbox.activated.connect(self.update_available)
     persistent = TableCheckbox()
     summary = TableCheckbox()
     remove_button = QtGui.QPushButton('remove')
     ind = QtCore.QPersistentModelIndex(self.model().index(
         self.n_variables, 2))
     remove_button.clicked.connect(lambda: self.remove_variable(ind.row()))
     remove_button.setIcon(QtGui.QIcon("gui/icons/remove.svg"))
     add_button = QtGui.QPushButton('   add   ')
     add_button.setIcon(QtGui.QIcon("gui/icons/add.svg"))
     add_button.clicked.connect(self.add_variable)
     self.insertRow(self.n_variables + 1)
     self.setCellWidget(self.n_variables, 0, variable_cbox)
     self.setCellWidget(self.n_variables, 1, subject_cbox)
     self.setCellWidget(self.n_variables, 3, persistent)
     self.setCellWidget(self.n_variables, 4, summary)
     self.setCellWidget(self.n_variables, 5, remove_button)
     self.setCellWidget(self.n_variables + 1, 5, add_button)
     if var_dict:  # Set cell values from provided dictionary.
         variable_cbox.addItems([var_dict['name']])
         subject_cbox.addItems([var_dict['subject']])
         value_item = QtGui.QTableWidgetItem()
         value_item.setText(var_dict['value'])
         self.setItem(self.n_variables, 2, value_item)
         persistent.setChecked(var_dict['persistent'])
         summary.setChecked(var_dict['summary'])
     else:
         variable_cbox.addItems(['select variable'] +
                                self.available_variables)
         if self.n_variables > 0:  # Set variable to previous variable if available.
             v_name = str(
                 self.cellWidget(self.n_variables - 1, 0).currentText())
             if v_name in self.available_variables:
                 cbox_set_item(variable_cbox, v_name)
                 subject_cbox.addItems(self.available_subjects(v_name))
     self.n_variables += 1
     self.update_available()
     null_resize(self)
Esempio n. 20
0
    def __init__(self, name, parent):
        QtGui.QWidget.__init__(self, parent=parent)
        self.c1 = 0
        self.c2 = 0
        self.c3 = 0
        L = 25
        H = 20
        space = 5
        x = 0
        self.label = QtGui.QLabel(parent=self, text=name)
        self.label.setGeometry(QtCore.QRect(x, 0, L, H))

        x += space + L
        L = 40
        self.comboFilterLen = QtGui.QComboBox(self)
        self.comboFilterLen.setGeometry(QtCore.QRect(x, 0, L, H))
        self.comboFilterLen.addItem("0")
        self.comboFilterLen.addItem("4")
        self.comboFilterLen.addItem("8")
        self.comboFilterLen.addItem("16")
        self.comboFilterLen.addItem("32")
        self.comboFilterLen.addItem("64")

        x += space + L
        L = 50
        self.lineedit_c1 = QtGui.QLineEdit(parent=self)
        self.lineedit_c1.setGeometry(QtCore.QRect(x, 0, L, H))
        self.lineedit_c1.editingFinished.connect(self.slotValueChanged_c1)
        self.lineedit_c1.setValidator(QtGui.QIntValidator(self.lineedit_c1))

        x += space + L
        self.lineedit_c2 = QtGui.QLineEdit(parent=self)
        self.lineedit_c2.setGeometry(QtCore.QRect(x, 0, L, H))
        self.lineedit_c2.editingFinished.connect(self.slotValueChanged_c2)
        self.lineedit_c2.setValidator(QtGui.QIntValidator(self.lineedit_c2))

        x += space + L
        self.lineedit_c3 = QtGui.QLineEdit(parent=self)
        self.lineedit_c3.setGeometry(QtCore.QRect(x, 0, L, H))
        self.lineedit_c3.editingFinished.connect(self.slotValueChanged_c3)
        self.lineedit_c3.setValidator(QtGui.QIntValidator(self.lineedit_c3))

        x += space + L
        L = 30
        self.label_raw = QtGui.QLabel(parent=self, text='4096')
        self.label_raw.setGeometry(QtCore.QRect(x, 0, L, H))

        x += space + L
        self.label_scaled = QtGui.QLabel(parent=self, text='123.7')
        self.label_scaled.setGeometry(QtCore.QRect(x, 0, L, H))

        x += 2 * space + L
        self.buttonPlot = QtGui.QPushButton(parent=self, text='P')
        self.buttonPlot.setGeometry(QtCore.QRect(x, 0, 20, 20))
Esempio n. 21
0
 def makeWidget(self):
     opts = self.param.opts
     t = opts['type']
     w = QtGui.QComboBox()
     w.setMaximumHeight(20)  ## set to match height of spin box and line edit
     w.sigChanged = w.currentIndexChanged
     w.value = self.value
     w.setValue = self.setValue
     self.widget = w  ## needs to be set before limits are changed
     self.limitsChanged(self.param, self.param.opts['limits'])
     if len(self.forward) > 0:
         self.setValue(self.param.value())
     return w
Esempio n. 22
0
    def init_ui(self):
        self.setWindowTitle('Love Bug')
        vbox = QtGui.QVBoxLayout()
        self.setLayout(vbox)

        self.view = gl.GLViewWidget()
        #self.view.setGeometry(0, 0, 1280, 820)
        self.view.opts['distance'] = 850
        self.view.opts['elevation'] = 10
        self.view.opts['azimuth'] = 30
        self.view.opts['fov'] = 90
        self.view.opts['viewport'] = [-475,-345,1500,1000]
        vbox.addWidget(self.view)
        
        hbox = QtGui.QHBoxLayout()
        vbox.addLayout(hbox)
        
        self.ShowSelect = QtGui.QComboBox(self)
        for selection in self.showlist:
            if selection == 'Pineapples': self.ShowSelect.insertSeparator(1000)
            self.ShowSelect.addItem(selection)
        self.ShowSelect.setMaxVisibleItems(100)
            
        self.SpeedSelect = QtGui.QComboBox(self)
        self.SpeedSelect.addItem('15 FPS')
        self.SpeedSelect.addItem('30 FPS')
        self.SpeedSelect.addItem('45 FPS')
        self.SpeedSelect.setCurrentIndex(1)
        
        self.CycleSelect = QtGui.QComboBox(self)
        self.CycleSelect.addItem('Cycle')
        self.CycleSelect.addItem('Manual')

        hbox.addWidget(self.ShowSelect)
        hbox.addWidget(self.SpeedSelect)
        hbox.addWidget(self.CycleSelect)

        self.setGeometry(0, 0, 600, 400)
        self.show()
Esempio n. 23
0
 def terminal_prompt(self, name='', title='', **kwargs):
     prompt = QtWidgets.QWidget()
     prompt.layout = QtWidgets.QFormLayout(parent=prompt)
     prompt.name = QtGui.QLineEdit(name, parent=prompt)
     prompt.type_selector = QtGui.QComboBox(prompt)
     prompt.ok = QtGui.QPushButton('Ok', parent=prompt)
     for typ in [Any, bool, float, Array1d, Array2d, Array3d]:
         prompt.type_selector.addItem(str(typ), typ)
     prompt.layout.addRow("Name:", prompt.name)
     prompt.layout.addRow("Type:", prompt.type_selector)
     prompt.layout.addRow("", prompt.ok)
     prompt.setLayout(prompt.layout)
     prompt.setWindowTitle("Add " + name)
     return prompt
Esempio n. 24
0
 def setupSelectionBar(self):
     spacer = QtGui.QSpacerItem(100, 20)
     self.combobox1 = QtGui.QComboBox()
     self.combobox1.setMaximumWidth(200)
     self.combobox1.setMinimumWidth(100)
     # self.combobox1.setMaximumHeight(20)
     self.combobox1.currentIndexChanged.connect(self.selectionBarChanged)
     self.combobox2 = QtGui.QComboBox()
     self.combobox2.setMaximumWidth(200)
     self.combobox2.setMinimumWidth(100)
     # self.combobox2.setMaximumHeight(20)
     self.combobox2.currentIndexChanged.connect(self.selectionBarChanged)
     for name in sorted(self.records):
         self.combobox1.addItem(name)
         self.combobox2.addItem(name)
     self.combobox1.setCurrentIndex(0)
     self.combobox2.setCurrentIndex(1)
     self.selectionBarLayout = QtGui.QHBoxLayout()
     self.selectionBarLayout.addSpacerItem(spacer)
     self.selectionBarLayout.addWidget(self.combobox1)
     self.selectionBarLayout.addSpacerItem(spacer)
     self.selectionBarLayout.addWidget(self.combobox2)
     self.selectionBarLayout.addSpacerItem(spacer)
Esempio n. 25
0
    def __init__(self, parent=None):
        super(login_dialog, self).__init__(parent)

        self.setGeometry(10, 30, 300, 200)  # Left, top, width, height.

        self.userID = None
        self.buttonLogin = QtGui.QPushButton('Login', self)
        self.buttonLogin.clicked.connect(self.handleLogin)
        self.combo = QtGui.QComboBox()
        self.users = get_users()
        self.combo.addItems(['Select User'] + self.users)

        layout = QtGui.QVBoxLayout(self)
        layout.addWidget(self.combo)
Esempio n. 26
0
    def __init__(self, parent=None):
        super().__init__(parent)
        self.setWindowTitle("Configure")
        self.formLayout = QtWidgets.QFormLayout(self)

        self.interval = QtGui.QDoubleSpinBox(self)
        self.interval.setValue(0.01)
        self.formLayout.addRow("Interval", self.interval)

        self.init_time = QtGui.QDoubleSpinBox(self)
        self.init_time.setValue(0.5)
        self.formLayout.addRow("Init Time", self.init_time)

        self.hb_period = QtGui.QSpinBox(self)
        self.hb_period.setValue(10)
        self.formLayout.addRow("Heartbeat Period", self.hb_period)

        self.source_type = QtGui.QComboBox(self)
        self.source_type.addItem("hdf5")
        self.source_type.addItem("psana")
        self.formLayout.addRow("Source Type", self.source_type)

        self.repeat = QtWidgets.QCheckBox(self)
        self.repeat.setChecked(True)
        self.formLayout.addRow("Repeat", self.repeat)

        self.files = []
        self.fileListView = QtWidgets.QListView(self)
        self.fileListView.setSelectionMode(
            QtWidgets.QAbstractItemView.ExtendedSelection)
        self.fileListModel = QtCore.QStringListModel(self.files)
        self.fileListView.setModel(self.fileListModel)
        self.formLayout.addRow(self.fileListView)

        self.horizontalLayout = QtWidgets.QHBoxLayout()

        self.addBtn = QtWidgets.QPushButton("Add", parent=self)
        self.addBtn.clicked.connect(self.addFile)
        self.horizontalLayout.addWidget(self.addBtn)

        self.removeBtn = QtWidgets.QPushButton("Remove", parent=self)
        self.removeBtn.clicked.connect(self.removeFiles)
        self.horizontalLayout.addWidget(self.removeBtn)

        self.applyBtn = QtWidgets.QPushButton("Apply", parent=self)
        self.applyBtn.clicked.connect(self.applyClicked)
        self.horizontalLayout.addWidget(self.applyBtn)

        self.formLayout.addRow(self.horizontalLayout)
Esempio n. 27
0
    def createWindow(self):
        self.layout = QtGui.QGridLayout()
        self.setWindowTitle("Please wait...")
        self.setLayout(self.layout)

        self.labelChooseNumVars = QtGui.QLabel('Number of variables')
        self.NumVarSpin = QtGui.QSpinBox()
        self.NumVarSpin.setMinimum(1)
        self.NumVarSpin.setMaximum(10)
        self.NumVarSpin.setValue(self.numVars)
        self.DataRateLabel = QtGui.QLabel(
            'Data Rate: ' + str(self.dataRates[self.currentDataRate]) + 'Hz')
        self.DataRateDial = QtGui.QDial()
        self.DataRateDial.setMinimum(0)
        self.DataRateDial.setMaximum(99)
        self.DataRateDial.setValue(self.dialDetents[self.currentDataRate])
        self.layout.addWidget(self.labelChooseNumVars, 0, 0, 1, 1)
        self.layout.addWidget(self.NumVarSpin, 0, 1, 1, 1)
        self.layout.addWidget(self.DataRateLabel, 1, 0, 1, 1)
        self.layout.addWidget(self.DataRateDial, 1, 1, 1, 1)

        self.NumVarSpin.valueChanged.connect(self.SpinBoxChanged)
        self.DataRateDial.valueChanged.connect(self.DialChanged)
        self.DataRateDial.sliderReleased.connect(self.DialDetent)
        self.DataRateDial.setMinimumSize(150, 150)

        self.Combos = [QtGui.QComboBox() for _ in range(10)]
        self.Labels = [QtGui.QLabel(str) for str in ['Param1','Param2',\
        'Param3','Param4','Param5','Param6','Param7','Param8','Param9','Param10']]
        self.OkButton = QtGui.QPushButton('OK')
        self.CancelButton = QtGui.QPushButton('Cancel')
        self.CancelButton.clicked.connect(self.close)
        self.layout.addWidget(self.OkButton, 12, 0, 1, 1)
        self.layout.addWidget(self.CancelButton, 12, 1, 1, 1)

        for i in range(10):
            self.layout.addWidget(self.Labels[i], i + 2, 0)
            self.layout.addWidget(self.Combos[i], i + 2, 1)

        for i in range(10 - self.numVars):
            self.Labels[i + self.numVars].hide()
            self.Combos[i + self.numVars].hide()
        self.timeoutTimer = QtCore.QTimer()
        if self.ser.is_open:
            self.ser.write("MCU+USB?\r\n".encode())
        self.timeoutTimer.timeout.connect(self.createParamList)
        self.timeoutTimer.start(25)
        self.show()
Esempio n. 28
0
        def fillTable(items, itemtype, filters):
            rowoffset = self.table.rowCount()
            for n, itemname in enumerate(items):
                combo = QtGui.QComboBox()

                combo.addItems(['None'])
                filternames = list(filters.keys())
                combo.addItems(filternames)

                curveitem = QtGui.QTableWidgetItem(itemname)

                idx = rowoffset + n
                self.table.insertRow(idx)
                self.table.setItem(idx, 0, curveitem)
                self.table.setCellWidget(idx, 1, combo)
                self.choices[itemname] = (combo, itemtype)
Esempio n. 29
0
    def __init__(self):
        super().__init__("Settings")
        self.widget = pg.LayoutWidget()
        self.samplingCb = QtGui.QComboBox()
        items = [f'{i} s' for i in [
            1,
            0.1,
            0.01,
        ]]
        [self.samplingCb.addItem(i) for i in items]
        self.samplingCb.setCurrentIndex(1)
        self.samplingCb.setMaximumWidth(120)
        self.samplingCb.setToolTip('sampling time')
        self.setSamplingBtn = QtGui.QPushButton('set')

        self.__setLayout()
Esempio n. 30
0
    def __init__(self, param, depth):
        ParameterItem.__init__(self, param, depth)
        if depth == 0:
            for c in [0, 1]:
                self.setBackground(c, QtGui.QBrush(QtGui.QColor(100, 100,
                                                                100)))
                self.setForeground(c, QtGui.QBrush(QtGui.QColor(220, 220,
                                                                255)))
                font = self.font(c)
                font.setBold(True)
                font.setPointSize(font.pointSize() + 1)
                self.setFont(c, font)
                self.setSizeHint(0, QtCore.QSize(0, 25))
        else:
            for c in [0, 1]:
                self.setBackground(c, QtGui.QBrush(QtGui.QColor(220, 220,
                                                                220)))
                font = self.font(c)
                font.setBold(True)
                #font.setPointSize(font.pointSize()+1)
                self.setFont(c, font)
                self.setSizeHint(0, QtCore.QSize(0, 20))

        self.addItem = None
        if 'addText' in param.opts:
            addText = param.opts['addText']
            if 'addList' in param.opts:
                self.addWidget = QtGui.QComboBox()
                self.addWidget.addItem(addText)
                for t in param.opts['addList']:
                    self.addWidget.addItem(t)
                self.addWidget.currentIndexChanged.connect(self.addChanged)
            else:
                self.addWidget = QtGui.QPushButton(addText)
                self.addWidget.clicked.connect(self.addClicked)
            w = QtGui.QWidget()
            l = QtGui.QHBoxLayout()
            l.setContentsMargins(0, 0, 0, 0)
            w.setLayout(l)
            l.addWidget(self.addWidget)
            l.addItem(
                QtGui.QSpacerItem(200, 10, QtGui.QSizePolicy.Expanding,
                                  QtGui.QSizePolicy.Minimum))
            self.addWidgetBox = w
            self.addItem = QtGui.QTreeWidgetItem([])
            self.addItem.setFlags(QtCore.Qt.ItemIsEnabled)
            ParameterItem.addChild(self, self.addItem)