def __init__(self, parent=None):
     super(VersionList, self).__init__(parent)
     contents = QFrame(self)
     layout = QVBoxLayout()
     layout.setSpacing(0)
     layout.setContentsMargins(0, 0, 0, 0)
     layout.addStretch(100)
     contents.setLayout(layout)
     self.setWidget(contents)
     self.contents = contents
    def get_line(mode='h'):
        line = QFrame()
        if mode == 'h':
            line.setFrameStyle(QFrame.HLine)
        elif mode == 'v':
            line.setFrameStyle(QFrame.VLine)

        line.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Expanding)

        return line
Exemple #3
0
    def create_widget(self):
        """ Create the underlying widget.

        """
        widget = QFrame(self.parent_widget())
        layout = QVBoxLayout()
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setSpacing(0)
        widget.setLayout(layout)
        self.widget = widget
Exemple #4
0
    def create_widgets(self):

        self.TableLabel1 = QLabel("Settings")
        self.ListOfSettings = QListWidget()
        self.buttonBox = QDialogButtonBox(QDialogButtonBox.Apply
                                          | QDialogButtonBox.Cancel
                                          | QDialogButtonBox.Ok)
        self.buttonBox.layout().setDirection(QBoxLayout.RightToLeft)
        #yara scan settings frame
        self.yaraSettingFrame = QFrame()
        self.dump_dirSettingFrame = QFrame()
        self.barSettingFrame = QFrame()

        self.labelRulesPath = QLabel('Path to YARA rules:')
        self.inputRulesPath = QLineEdit()

        self.labelFoo = QLabel('Path to dumps:')
        self.inputDumpDirPath = QLineEdit()
        self.labelBar = QLabel('Just BAR as usual')
Exemple #5
0
 def setStatusModel(self, model):
     self.__model = model
     for idx in xrange(0, model.count()):
         label = StatusLabel(self, model.status(idx))
         self.__hlayout.addWidget(label)
         if idx < model.count() - 1:
             line = QFrame(self)
             line.setFrameShape(QFrame.VLine)
             line.setFrameShadow(QFrame.Sunken)
             self.__hlayout.addWidget(line)
         self.__labels.append(label)
Exemple #6
0
    def __setupUi(self):
        self.setLayout(QVBoxLayout(self))
        self.layout().setContentsMargins(6, 6, 6, 6)

        self.__search = SearchWidget(self, objectName="search-line")

        self.__search.setPlaceholderText(
            self.tr("Search for widget or select from the list."))

        self.layout().addWidget(self.__search)

        self.__frame = QFrame(self, objectName="menu-frame")
        layout = QVBoxLayout()
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setSpacing(2)
        self.__frame.setLayout(layout)

        self.layout().addWidget(self.__frame)

        self.__pages = PagedMenu(self, objectName="paged-menu")
        self.__pages.currentChanged.connect(self.setCurrentIndex)
        self.__pages.triggered.connect(self.triggered)
        self.__pages.hovered.connect(self.hovered)

        self.__frame.layout().addWidget(self.__pages)

        self.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Expanding)

        self.__suggestPage = SuggestMenuPage(self, objectName="suggest-page")
        self.__suggestPage.setActionRole(QtWidgetRegistry.WIDGET_ACTION_ROLE)
        self.__suggestPage.setIcon(icon_loader().get("icons/Search.svg"))

        if sys.platform == "darwin":
            view = self.__suggestPage.view()
            view.verticalScrollBar().setAttribute(Qt.WA_MacMiniSize, True)
            # Don't show the focus frame because it expands into the tab bar.
            view.setAttribute(Qt.WA_MacShowFocusRect, False)

        i = self.addPage(self.tr("Quick Search"), self.__suggestPage)
        button = self.__pages.tabButton(i)
        button.setObjectName("search-tab-button")
        button.setStyleSheet("TabButton {\n"
                             "    qproperty-flat_: false;\n"
                             "    border: none;"
                             "}\n")

        self.__search.textEdited.connect(self.__on_textEdited)

        self.__navigator = ItemViewKeyNavigator(self)
        self.__navigator.setView(self.__suggestPage.view())
        self.__search.installEventFilter(self.__navigator)

        self.__grip = WindowSizeGrip(self)
        self.__grip.raise_()
Exemple #7
0
    def __init__(self, *args):
        PluginBase.__init__(self, BrickletIndustrialDualAnalogIn, *args)

        self.analog_in = self.device

        self.cbe_voltage0 = CallbackEmulator(
            functools.partial(self.analog_in.get_voltage, 0),
            functools.partial(self.cb_voltage, 0), self.increase_error_count)
        self.cbe_voltage1 = CallbackEmulator(
            functools.partial(self.analog_in.get_voltage, 1),
            functools.partial(self.cb_voltage, 1), self.increase_error_count)

        self.calibration = None

        self.sample_rate_label = QLabel('Sample Rate:')
        self.sample_rate_combo = QComboBox()
        self.sample_rate_combo.addItem('976 Hz')
        self.sample_rate_combo.addItem('488 Hz')
        self.sample_rate_combo.addItem('244 Hz')
        self.sample_rate_combo.addItem('122 Hz')
        self.sample_rate_combo.addItem('61 Hz')
        self.sample_rate_combo.addItem('4 Hz')
        self.sample_rate_combo.addItem('2 Hz')
        self.sample_rate_combo.addItem('1 Hz')

        self.current_voltage = [None, None]  # float, V
        self.calibration_button = QPushButton('Calibration...')

        self.sample_rate_combo.currentIndexChanged.connect(
            self.sample_rate_combo_index_changed)
        self.calibration_button.clicked.connect(
            self.calibration_button_clicked)

        plots = [('Channel 0', Qt.red, lambda: self.current_voltage[0],
                  format_voltage),
                 ('Channel 1', Qt.blue, lambda: self.current_voltage[1],
                  format_voltage)]
        self.plot_widget = PlotWidget('Voltage [V]', plots)

        hlayout = QHBoxLayout()
        hlayout.addWidget(self.sample_rate_label)
        hlayout.addWidget(self.sample_rate_combo)
        hlayout.addStretch()
        hlayout.addWidget(self.calibration_button)

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(hlayout)
    def __init__(self, scheme, parent):
        super(EditorSchemeDesigner, self).__init__(parent, Qt.Dialog)
        self.original_style = copy.copy(resources.CUSTOM_SCHEME)
        self._avoid_on_loading, self.saved, self._components = True, False, {}
        self.setWindowTitle(translations.TR_PREFERENCES_EDITOR_SCHEME_DESIGNER)
        self.setMinimumSize(450, 480)
        self.setMaximumSize(500, 900)
        self.resize(450, 600)

        # all layouts and groupboxes
        group0 = QGroupBox(translations.TR_PROJECT_NAME)  # scheme filename
        group1 = QGroupBox(translations.TR_PROJECT_PROPERTIES)  # properties
        group2 = QGroupBox(translations.TR_PREVIEW)  # quick preview thingy
        group0_hbox, group1_vbox = QHBoxLayout(group0), QVBoxLayout(group1)
        this_dialog_vbox, group2_vbox = QVBoxLayout(self), QVBoxLayout(group2)
        self._grid, scrollArea, frame = QGridLayout(), QScrollArea(), QFrame()

        # widgets
        self.line_name, btnSave = QLineEdit(), QPushButton(
            translations.TR_SAVE)
        self.line_name.setPlaceholderText(getuser().capitalize() + "s_scheme")
        group0_hbox.addWidget(self.line_name)
        group0_hbox.addWidget(btnSave)
        self.connect(btnSave, SIGNAL("clicked()"), self.save_scheme)
        _demo = "<center>" + ascii_letters  # demo text for preview
        self.preview_label1, self.preview_label2 = QLabel(_demo), QLabel(_demo)
        group2_vbox.addWidget(self.preview_label1)
        group2_vbox.addWidget(self.preview_label2)

        # rows titles
        self._grid.addWidget(QLabel("<b>" + translations.TR_PROJECT_NAME), 0,
                             0)
        self._grid.addWidget(QLabel("<b>" + translations.TR_CODE), 0, 1)
        self._grid.addWidget(
            QLabel("<b>" + translations.TR_EDITOR_SCHEME_PICK_COLOR), 0, 2)

        # fill rows
        for key in sorted(tuple(resources.COLOR_SCHEME.keys())):
            self.add_item(key, scheme)
        self.preview_label1.setStyleSheet('background:transparent')
        self.preview_label2.setStyleSheet('color:     transparent')

        # fill the scroll area
        frame.setLayout(self._grid)
        scrollArea.setWidget(frame)
        group1_vbox.addWidget(scrollArea)

        # put groups on the dialog
        this_dialog_vbox.addWidget(group1)
        this_dialog_vbox.addWidget(group2)
        this_dialog_vbox.addWidget(group0)
        self._avoid_on_loading = self._modified = False
Exemple #9
0
 def __init__(self, parent=None, fakeStartup=False, filename=None):
     '''
     Constructor
     '''
     self._fakeStartup = fakeStartup
     super(DrumBurp, self).__init__(parent)
     self._state = None
     self._asciiSettings = None
     self._printer = None
     self.setupUi(self)
     self.scoreScene = None
     self.paperBox.blockSignals(True)
     self.paperBox.clear()
     self._knownPageHeights = []
     printer = QPrinter()
     printer.setOutputFileName("invalid.pdf")
     for name in dir(QPrinter):
         attr = getattr(QPrinter, name)
         if (isinstance(attr, QPrinter.PageSize) and name != "Custom"):
             self.paperBox.addItem(name)
             printer.setPaperSize(attr)
             self._knownPageHeights.append(printer.pageRect().height())
     self._pageHeight = printer.paperRect().height()
     self.paperBox.blockSignals(False)
     settings = self._makeQSettings()
     self.recentFiles = [
         unicode(fname)
         for fname in settings.value("RecentFiles").toStringList()
         if os.path.exists(unicode(fname))
     ]
     if filename is None:
         filename = (None
                     if len(self.recentFiles) == 0 else self.recentFiles[0])
     self.filename = filename
     self.addToRecentFiles()
     self.updateRecentFiles()
     self.songProperties = QDisplayProperties()
     # Create scene
     self.scoreScene = QScore(self)
     self.restoreGeometry(settings.value("Geometry").toByteArray())
     self.restoreState(settings.value("MainWindow/State").toByteArray())
     self.statusbar.addPermanentWidget(QFrame())
     self.availableNotesLabel = QLabel()
     self.availableNotesLabel.setMinimumWidth(250)
     self.statusbar.addPermanentWidget(self.availableNotesLabel)
     self._infoBar = QLabel()
     self.statusbar.addPermanentWidget(self._infoBar)
     self._initializeState()
     self.setSections()
     QTimer.singleShot(0, self._startUp)
     self.actionCheckOnStartup.setChecked(
         settings.value("CheckOnStartup").toBool())
Exemple #10
0
    def __init__(self, *args):
        COMCUPluginBase.__init__(self, BrickletPTCV2, *args)

        self.ptc = self.device

        self.str_connected = 'Sensor is <font color="green">connected</font>'
        self.str_not_connected = 'Sensor is <font color="red">not connected</font>'

        self.cbe_temperature = CallbackEmulator(self.ptc.get_temperature,
                                                self.cb_temperature,
                                                self.increase_error_count)

        self.wire_label = QLabel('Wire Type:')
        self.wire_combo = QComboBox()
        self.wire_combo.addItem('2-Wire')
        self.wire_combo.addItem('3-Wire')
        self.wire_combo.addItem('4-Wire')

        self.noise_label = QLabel('Noise Rejection Filter:')
        self.noise_combo = QComboBox()
        self.noise_combo.addItem('50 Hz')
        self.noise_combo.addItem('60 Hz')

        self.connected_label = QLabel(self.str_connected)

        self.current_temperature = None # float, °C

        self.wire_combo.currentIndexChanged.connect(self.wire_combo_index_changed)
        self.noise_combo.currentIndexChanged.connect(self.noise_combo_index_changed)

        plots = [('Temperature', Qt.red, lambda: self.current_temperature, u'{} °C'.format)]
        self.plot_widget = PlotWidget(u'Temperature [°C]', plots, extra_key_widgets=[self.connected_label])

        hlayout = QHBoxLayout()
        hlayout.addWidget(self.wire_label)
        hlayout.addWidget(self.wire_combo)
        hlayout.addStretch()
        hlayout.addWidget(self.noise_label)
        hlayout.addWidget(self.noise_combo)

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(hlayout)

        self.connected_timer = QTimer()
        self.connected_timer.timeout.connect(self.update_connected)
        self.connected_timer.setInterval(1000)
Exemple #11
0
    def __init__(self, dockwidget, parent, params):

        QDialog.__init__(self, parent)
        main_lay = QVBoxLayout(self)
        self.dockwidget = dockwidget
        self.params = params

        self.setWindowTitle('Tags editor')

        # Top frame
        self.fra_top = QFrame()
        fra_top_lay = QVBoxLayout(self.fra_top)

        self.lst_main = QListWidget(self)
        self.btn_add = QPushButton('Add tag')
        self.btn_add.clicked.connect(self.add_tag)
        self.btn_remove = QPushButton('Remove tag')
        self.btn_remove.clicked.connect(self.remove_tag)

        fra_top_lay.addWidget(self.lst_main)
        fra_top_lay.addWidget(self.btn_add)
        fra_top_lay.addWidget(self.btn_remove)

        # Bottom frame
        self.fra_bottom = QFrame()
        fra_bottom_lay = QHBoxLayout(self.fra_bottom)

        btb_main = QDialogButtonBox(QDialogButtonBox.Ok
                                    | QDialogButtonBox.Cancel)
        btb_main.accepted.connect(self.ok)
        btb_main.rejected.connect(self.reject)

        fra_bottom_lay.addWidget(btb_main)

        # Main
        main_lay.addWidget(self.fra_top)
        main_lay.addWidget(self.fra_bottom)

        self.initialize()
Exemple #12
0
    def __init__(self):
        ContentModel.__init__(self)
        QObject.__init__(self)
        self.parameter = None

        # the order of these handlers depend on ERT's way of keeping track of the keys
        self.handlers = [RFTFetcher(), EnsembleFetcher()]
        self.current_handler = None
        self.empty_panel = QFrame()

        self.fs_for_comparison_plots = None
        self.comparison_fs_name = "None"
        self.data = None
Exemple #13
0
    def __init__(self, arr, mgr):
        QMainWindow.__init__(self)

        self.arr = arr

        self.mgr = mgr
        self.main_widget = QWidget()
        self.layout = QtGui.QGridLayout(self.main_widget)
        self.setCentralWidget(self.main_widget)

        self.label = ImageLabel(self, arr)
        self.label_container = QFrame()
        self.label_container.setFrameShape(
            QtGui.QFrame.StyledPanel | QtGui.QFrame.Sunken)
        self.label_container.setLineWidth(1)

        self.label_container.layout = QtGui.QGridLayout(self.label_container)
        self.label_container.layout.setMargin(0)
        self.label_container.layout.addWidget(self.label, 0, 0)
        self.layout.addWidget(self.label_container, 0, 0)

        self.mgr.add_window(self)
        self.main_widget.show()

        self.setWindowTitle('Skivi - The skimage viewer.')

        self.mixer_panel = MixerPanel(self.arr)
        self.layout.addWidget(self.mixer_panel, 0, 2)
        self.mixer_panel.show()
        self.mixer_panel.set_callback(self.refresh_image)

        self.rgbv_hist = QuadHistogram(self.arr)
        self.layout.addWidget(self.rgbv_hist, 0, 1)
        self.rgbv_hist.show()

        self.rgb_hsv_disp = RGBHSVDisplay()
        self.layout.addWidget(self.rgb_hsv_disp, 1, 0)
        self.rgb_hsv_disp.show()

        self.layout.setColumnStretch(0, 1)
        self.layout.setRowStretch(0, 1)

        self.save_file = QtGui.QPushButton('Save to File')
        self.save_file.clicked.connect(self.save_to_file)
        self.save_stack = QtGui.QPushButton('Save to Stack')
        self.save_stack.clicked.connect(self.save_to_stack)
        self.save_file.show()
        self.save_stack.show()

        self.layout.addWidget(self.save_stack, 1, 1)
        self.layout.addWidget(self.save_file, 1, 2)
Exemple #14
0
    def __init__(self, *args):
        PluginBase.__init__(self, BrickletHallEffect, *args)

        self.hf = self.device

        self.cbe_edge_count = CallbackEmulator(self.get_edge_count,
                                               self.cb_edge_count,
                                               self.increase_error_count)

        self.current_value = None

        self.label_count = CountLabel('Count')

        plots = [('Value', Qt.red, lambda: self.current_value, str)]
        self.plot_widget = PlotWidget('Value', plots, extra_key_widgets=[self.label_count],
                                      curve_motion_granularity=20, update_interval=0.05)
        self.plot_widget.set_fixed_y_scale(0, 1, 1, 1)

        self.combo_edge_type = QComboBox()
        self.combo_edge_type.addItem('Rising')
        self.combo_edge_type.addItem('Falling')
        self.combo_edge_type.addItem('Both')
        self.combo_edge_type.currentIndexChanged.connect(self.edge_changed)

        self.spin_debounce = QSpinBox()
        self.spin_debounce.setMinimum(0)
        self.spin_debounce.setMaximum(255)
        self.spin_debounce.setValue(100)
        self.spin_debounce.editingFinished.connect(self.debounce_changed)

        self.button_reset = QPushButton('Reset Count')
        self.button_reset.clicked.connect(self.reset_count)

        hlayout = QHBoxLayout()
        hlayout.addWidget(QLabel('Edge Type:'))
        hlayout.addWidget(self.combo_edge_type)
        hlayout.addStretch()
        hlayout.addWidget(QLabel('Debounce Period [ms]:'))
        hlayout.addWidget(self.spin_debounce)
        hlayout.addStretch()
        hlayout.addWidget(self.button_reset)

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(hlayout)
    def __init__(self, *args):
        COMCUPluginBase.__init__(self, BrickletMotorizedLinearPoti, *args)

        self.mp = self.device

        self.cbe_position = CallbackEmulator(self.mp.get_position,
                                             self.cb_position,
                                             self.increase_error_count)

        self.current_position = None

        self.slider = QSlider(Qt.Horizontal)
        self.slider.setRange(0, 100)
        self.slider.setMinimumWidth(200)
        self.slider.setEnabled(False)

        plots = [('Potentiometer Position', Qt.red, lambda: self.current_position, str)]
        self.plot_widget = PlotWidget('Position', plots, extra_key_widgets=[self.slider],
                                      curve_motion_granularity=40, update_interval=0.025)

        self.motor_slider = QSlider(Qt.Horizontal)
        self.motor_slider.setRange(0, 100)
        self.motor_slider.valueChanged.connect(self.motor_slider_value_changed)
        self.motor_hold_position = QCheckBox("Hold Position")
        self.motor_drive_mode = QComboBox()
        self.motor_drive_mode.addItem('Fast')
        self.motor_drive_mode.addItem('Smooth')
        
        def get_motor_slider_value():
            return self.motor_slider.value()
        
        self.motor_hold_position.stateChanged.connect(lambda x: self.motor_slider_value_changed(get_motor_slider_value()))
        self.motor_drive_mode.currentIndexChanged.connect(lambda x: self.motor_slider_value_changed(get_motor_slider_value()))

        self.motor_position_label = MotorPositionLabel('Motor Target Position:')

        hlayout = QHBoxLayout()
        hlayout.addWidget(self.motor_position_label)
        hlayout.addWidget(self.motor_slider)
        hlayout.addWidget(self.motor_drive_mode)
        hlayout.addWidget(self.motor_hold_position)

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(hlayout)
    def createWidget(self):
        """
        Create widget
        """
        self.labelDescr = QLabel("\n\n")
        self.labelDescr.setFrameStyle(QFrame.StyledPanel)
        self.labelDescr.setSizePolicy(
            QSizePolicy.Ignored,
            QSizePolicy.Fixed)  # added to avoid a resize of the window

        self.mainTab = QTabWidget()
        self.mainFrame = QFrame()
        self.moreFrame = QFrame()
        self.more2Frame = QFrame()

        self.mainTab.addTab(self.mainFrame, "Arguments")
        self.mainTab.addTab(self.moreFrame, "Next ...")
        self.mainTab.addTab(self.more2Frame, "More...")
        self.mainTab.setTabEnabled(1, False)
        self.mainTab.setTabEnabled(2, False)

        self.widgetLayout = QVBoxLayout()
        self.widgetLayout.addWidget(self.mainTab)
        self.widgetLayout.addWidget(self.labelDescr)

        self.mainLayout = QGridLayout()
        self.mainFrame.setLayout(self.mainLayout)

        self.moreLayout = QGridLayout()
        self.moreFrame.setLayout(self.moreLayout)

        self.more2Layout = QGridLayout()
        self.more2Frame.setLayout(self.more2Layout)

        self.setLayout(self.widgetLayout)

        self.addWidgets()
Exemple #17
0
    def createPlotHeader(self, track, wellPlotData):
        logger.debug(">>createPlotHeader() ")
        assert track != None
        assert wellPlotData != None

        logTrackData = track.data(Qt.UserRole)
        titleFrame = QFrame()
        vLayout = QVBoxLayout()
        vbox = QWidget()

        label_bg_rgb = self.wellPlotData.label_background_rgb
        label_bg_alpha = self.wellPlotData.label_background_alpha
        label_fg_rgb = self.wellPlotData.label_foreground_rgb
        label_fg_alpha = self.wellPlotData.label_foreground_alpha
        (fr, fg, fb,
         falpha) = ImageUtils.rbgaTointValues(label_fg_rgb, label_fg_alpha)
        (br, bg, bb,
         balpha) = ImageUtils.rbgaTointValues(label_bg_rgb, label_bg_alpha)

        #in case logs=0, as we reference .geometry()
        headerWidget = QWidget()
        if len(logTrackData.getLogs()) > 0:
            layout = QVBoxLayout()
            for log in logTrackData.getLogs():
                headerWidget = LogHeaderLabel(log, track, wellPlotData)
                layout.addWidget(headerWidget)
            topSpacer = QtGui.QWidget()
            topSpacer.setSizePolicy(QtGui.QSizePolicy.Minimum,
                                    QtGui.QSizePolicy.Expanding)
            layout.addWidget(topSpacer)
            vbox.setLayout(layout)

        vLayout.addWidget(vbox)
        titleFrame.setLayout(vLayout)
        titleFrame.setFrameStyle(QtGui.QFrame.StyledPanel
                                 | QtGui.QFrame.Raised)
        trackGeom = track.geometry()
        titleFrame.setMinimumWidth(trackGeom.width())
        titleFrame.setGeometry(trackGeom.x(), trackGeom.y(), trackGeom.width(),
                               headerWidget.geometry().height())
        logger.debug(
            "--createPlotHeader() trackGeom.width(): {0} headerWidget.geometry().height(): {1}"
            .format(trackGeom.width(),
                    headerWidget.geometry().height()))
        logger.debug(
            "--createPlotHeader() titleFrame.width(): {0} titleFrame.geometry().height(): {1}"
            .format(titleFrame.width(),
                    titleFrame.geometry().height()))
        return titleFrame
Exemple #18
0
    def __init__(self, parent=None):
        super().__init__(parent)

        self.corpus = None

        # -- INFO --
        info_box = gui.widgetBox(self.controlArea, 'Info')
        self.controlArea.layout().addStretch()
        self.info_label = gui.label(info_box, self,
                                    'No input corpus detected.')
        # Commit checkbox and commit button.
        output_box = gui.widgetBox(self.controlArea, 'Output')
        auto_commit_box = gui.auto_commit(output_box,
                                          self,
                                          'autocommit',
                                          'Commit',
                                          box=False)
        auto_commit_box.setMinimumWidth(170)

        # -- PIPELINE --
        frame = QFrame()
        frame.setContentsMargins(0, 0, 0, 0)
        frame.setFrameStyle(QFrame.Box)
        frame.setStyleSheet('.QFrame { border: 1px solid #B3B3B3; }')
        frame_layout = QVBoxLayout()
        frame_layout.setContentsMargins(0, 0, 0, 0)
        frame_layout.setSpacing(0)
        frame.setLayout(frame_layout)
        # Load the previous states.
        persistent_data = [
            self.persistent_data_tokenizer,
            self.persistent_data_stemmer,
            self.persistent_data_casing,
            self.persistent_data_filter,
        ]
        for ModuleClass, ModuleData in zip(PREPROCESSOR_MODULES,
                                           persistent_data):
            pp_module_widget = ModuleClass(ModuleData)  # Create pp instance.
            self.preprocessors.append(pp_module_widget)
            pp_module_widget.change_signal.connect(self.settings_invalidated)
            pp_module_widget.error_signal.connect(self.display_message)

            frame_layout.addWidget(pp_module_widget)
        self.store_pipeline()  # Store the pipeline after loading it.

        frame_layout.addStretch()
        self.mainArea.layout().addWidget(frame)

        self.progress_bar = None  # Progress bar initialization.
Exemple #19
0
    def __init__(self, *args):
        COMCUPluginBase.__init__(self, BrickletAnalogInV3, *args)

        self.ai = self.device

        self.cbe_voltage = CallbackEmulator(self.ai.get_voltage,
                                            self.cb_voltage,
                                            self.increase_error_count)

        self.current_voltage = None  # float, V

        plots = [('Voltage', Qt.red, lambda: self.current_voltage,
                  format_voltage)]
        self.plot_widget = PlotWidget('Voltage [V]', plots)

        self.oversampling_combo = QComboBox()
        self.oversampling_combo.addItem('32x (0.56ms)')
        self.oversampling_combo.addItem('64x (1.12ms)')
        self.oversampling_combo.addItem('128x (2.24ms)')
        self.oversampling_combo.addItem('256x (4.48ms)')
        self.oversampling_combo.addItem('512x (8.96ms)')
        self.oversampling_combo.addItem('1024x (17.92ms)')
        self.oversampling_combo.addItem('2048x (35.84ms)')
        self.oversampling_combo.addItem('4096x (71.68ms)')
        self.oversampling_combo.addItem('8192x (143.36ms)')
        self.oversampling_combo.addItem('16384x (286.72ms)')

        self.oversampling_combo.currentIndexChanged.connect(
            self.oversampling_combo_index_changed)

        self.calibration = None
        self.calibration_button = QPushButton('Calibration...')
        self.calibration_button.clicked.connect(
            self.calibration_button_clicked)

        layout_h1 = QHBoxLayout()
        layout_h1.addWidget(QLabel('Oversampling:'))
        layout_h1.addWidget(self.oversampling_combo)
        layout_h1.addStretch()
        layout_h1.addWidget(self.calibration_button)

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(layout_h1)
Exemple #20
0
    def __init__(self, dockwidget, parent):

        QDialog.__init__(self, parent)
        main_lay = QVBoxLayout(self)
        self.dockwidget = dockwidget
        self.tag_name = None

        self.setWindowTitle('Tag name')

        # Top frame
        self.fra_top = QFrame()
        fra_top_lay = QVBoxLayout(self.fra_top)

        self.lbl_explanation = QLabel('Insert a name (no blanks allowed)')
        fra_top_lay.addWidget(self.lbl_explanation)

        self.txt_name = QLineEdit()
        self.txt_name.setValidator(RegExValidators.get_no_blanks())
        fra_top_lay.addWidget(self.txt_name)

        # Button box
        self.btb_main = QDialogButtonBox(QDialogButtonBox.Ok
                                         | QDialogButtonBox.Cancel)
        self.btb_main.accepted.connect(self.ok)
        self.btb_main.rejected.connect(self.reject)

        # Bottom frame
        self.fra_bottom = QFrame()
        fra_bottom_lay = QHBoxLayout(self.fra_bottom)
        fra_bottom_lay.addWidget(self.btb_main)

        # Main
        main_lay.addWidget(self.fra_top)
        main_lay.addWidget(self.fra_bottom)

        self.initialize()
Exemple #21
0
    def __init__(self, parent=None):
        """ Initialize a QFlowArea.

        Parameters
        ----------
        parent : QWidget, optional
            The parent widget of this widget.

        """
        super(QFlowArea, self).__init__(parent)
        self._widget = QFrame(self)
        self._layout = QFlowLayout()
        self._widget.setLayout(self._layout)
        self.setWidgetResizable(True)
        self.setWidget(self._widget)
Exemple #22
0
 def __init__(self, option, parent):
     self._settings = QSettings()
     self.option = option
     self.name = option.name
     self.title = self.name.replace('_', ' ')
     self.parent = parent
     self.container = None
     self.field = None
     if self.option.is_poly:
         new_parent = QFrame(self.parent)
         new_parent.setFrameShape(QFrame.StyledPanel)
         new_parent.setLayout(QGridLayout())
         self._addRow(new_parent, self.parent.layout())
         self.parent = new_parent
     self._build_field()
Exemple #23
0
    def __init__(self, *args):
        COMCUPluginBase.__init__(self, BrickletDistanceIRV2, *args)

        self.dist = self.device

        self.cbe_distance = CallbackEmulator(self.dist.get_distance,
                                             self.cb_distance,
                                             self.increase_error_count)
        self.cbe_analog_value = CallbackEmulator(self.dist.get_analog_value,
                                                 self.cb_analog_value,
                                                 self.increase_error_count)

        self.analog_label = AnalogLabel('Analog Value:')
        hlayout = QHBoxLayout()
        self.average_label = QLabel('Moving Average Length:')
        self.average_spin = QSpinBox()
        self.average_spin.setMinimum(1)
        self.average_spin.setMaximum(1000)
        self.average_spin.setSingleStep(1)
        self.average_spin.setValue(25)
        self.average_spin.editingFinished.connect(self.average_spin_finished)

        self.sensor_label = QLabel('Sensor Type:')
        self.sensor_combo = QComboBox()
        self.sensor_combo.addItem('2Y0A41 (4-30cm)')
        self.sensor_combo.addItem('2Y0A21 (10-80cm)')
        self.sensor_combo.addItem('2Y0A02 (20-150cm)')
        self.sensor_combo.currentIndexChanged.connect(self.sensor_combo_changed)

        hlayout.addWidget(self.average_label)
        hlayout.addWidget(self.average_spin)
        hlayout.addStretch()
        hlayout.addWidget(self.sensor_label)
        hlayout.addWidget(self.sensor_combo)

        self.current_distance = None # float, cm

        plots = [('Distance', Qt.red, lambda: self.current_distance, '{} cm'.format)]
        self.plot_widget = PlotWidget('Distance [cm]', plots, extra_key_widgets=[self.analog_label])

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(hlayout)
Exemple #24
0
    def __init__(self, parent):
        QToolBar.__init__(self, parent)
        assert parent
        self.dock = parent

        # a fake spacer widget
        w = QWidget(self)
        l = QHBoxLayout(w)
        l.setMargin(0)
        l.setSpacing(0)
        l.addStretch()

        frame = QFrame()
        layout = QBoxLayout(QBoxLayout.LeftToRight, frame)
        layout.setContentsMargins(4, 4, 0, 0)
        layout.setSpacing(2)
        self.aDockFrame = self.addWidget(frame)

        self.__icon = QLabel()

        layout.addWidget(self.__icon)
        layout.addWidget(QLabel(self.dock.windowTitle()))

        self.dock.windowIconChanged.connect(self.__setWindowIcon)

        # fake spacer item
        spacer = QWidgetAction(self)
        spacer.setDefaultWidget(w)

        self.setMovable(False)
        self.setFloatable(False)
        self.setIconSize(QSize(12, 12))

        self.aFloat = QAction(self)
        self.aClose = QAction(self)

        QToolBar.addAction(self, spacer)
        self.separator = QToolBar.addSeparator(self)
        QToolBar.addAction(self, self.aFloat)
        QToolBar.addAction(self, self.aClose)

        self.updateStandardIcons()

        self.dockWidgetFeaturesChanged(self.dock.features())

        self.dock.featuresChanged.connect(self.dockWidgetFeaturesChanged)
        self.aFloat.triggered.connect(self._floatTriggered)
        self.aClose.triggered.connect(self.dock.close)
Exemple #25
0
    def addSeparator(self):
        widget = QWidget()
        layout = QVBoxLayout()
        widget.setLayout(layout)

        frame = QFrame()
        frame.setFrameShape(QFrame.HLine)
        frame.setFrameShadow(QFrame.Sunken)

        layout.addSpacing(5)
        layout.addWidget(frame)
        layout.addSpacing(5)

        self.__startNewRow()
        self.__layout.addWidget(widget, self.__row, 1, 1, 5)
        self.__rowFinished()
    def __init__(self, parent, main):
        super(MirrorWalletsDialog, self).__init__(parent, main)

        self.progressText = ""
        self.counter = 1
        self.progress = False
        self.progressThr = None

        self.setWindowFlags(Qt.Dialog)

        infoLabel = QRichLabel(
            self.
            tr('Starting v0.96, Armory needs to mirror Python '
               'wallets into C++ wallets in order to operate. Mirrored C++ wallets '
               'are watching only (they do not hold any private keys).<br><br> '
               'Mirrored wallets are used to interface with the database and perform '
               'operations that aren\'t available to the legacy Python wallets, such '
               'support for compressed public keys and Segregated Witness transactions. '
               '<br><br>'
               'Mirroring only needs to happen once per wallet. Synchronization '
               'will happen every time the Python wallet address chain is ahead of the '
               'mirrored Cpp wallet address chain (this typically rarely happens).'
               '<br><br>'
               'This process can take up to a few minutes per wallet.<br><br>'
               ))

        self.statusLabel = QLabel('...')
        self.statusLabel.setAlignment(Qt.AlignCenter | Qt.AlignVCenter)

        frmProgress = QFrame()
        frmProgress.setFrameStyle(STYLE_RAISED)
        progressLayout = QGridLayout()
        progressLayout.addWidget(self.statusLabel, 0, 0, 1, 1)
        frmProgress.setLayout(progressLayout)

        self.connect(self, SIGNAL('UpdateTextStatus'), self.updateTextStatus)
        self.connect(self, SIGNAL('TerminateDlg'), self.shutdown)

        layout = QGridLayout()
        layout.addWidget(infoLabel, 0, 0, 3, 1)
        layout.addWidget(frmProgress, 3, 0, 1, 1)

        self.setWindowTitle(self.tr('Mirroring Wallets'))
        self.setLayout(layout)

        self.setMinimumWidth(500)
        self.setFocus()
Exemple #27
0
    def initUI(self):
        cw = QWidget()
        self.setCentralWidget(cw)
        grid = QGridLayout()
        grid.setSpacing(15)

        # status bar
        self.statusBar().showMessage('Ready')

        font_label = QFont()
        font_label.setBold(True)
        ################ dicom reader
        rstart = 0
        text_dcm = QLabel('DICOM reader')
        text_dcm.setFont(font_label)
        self.text_dcm_dir = QLabel('DICOM dir:')
        self.text_dcm_data = QLabel('DICOM data:')
        self.text_dcm_out = QLabel('output file:')
        grid.addWidget(text_dcm, rstart + 0, 1, 1, 4)
        grid.addWidget(self.text_dcm_dir, rstart + 1, 1, 1, 4)
        grid.addWidget(self.text_dcm_data, rstart + 2, 1, 1, 4)
        grid.addWidget(self.text_dcm_out, rstart + 3, 1, 1, 4)
        btn_dcmdir = QPushButton("Load DICOM", self)
        btn_dcmdir.clicked.connect(self.loadDcmDir)
        btn_dcmred = QPushButton("Organ Segmentation", self)
        btn_dcmred.clicked.connect(self.organSegmentation)
        btn_dcmcrop = QPushButton("Crop", self)
        btn_dcmcrop.clicked.connect(self.cropDcm)
        btn_dcmsave = QPushButton("Save DCM", self)
        btn_dcmsave.clicked.connect(self.saveDcm)
        grid.addWidget(btn_dcmdir, rstart + 4, 1)
        grid.addWidget(btn_dcmred, rstart + 4, 2)
        grid.addWidget(btn_dcmcrop, rstart + 4, 3)
        grid.addWidget(btn_dcmsave, rstart + 4, 4)

        hr = QFrame()
        hr.setFrameShape(QFrame.HLine)
        grid.addWidget(hr, rstart + 5, 0, 1, 6)

        # quit
        btn_quit = QPushButton("Quit", self)
        btn_quit.clicked.connect(self.quit)
        grid.addWidget(btn_quit, 24, 2, 1, 2)

        cw.setLayout(grid)
        self.setWindowTitle('liver-surgery')
        self.show()
Exemple #28
0
    def init_SegmentationTab(self):
        vbox = QVBoxLayout()
        vbox.setSpacing(10)

        self.text_seg_in = QLabel('input data:')
        self.text_seg_data = QLabel('segment. data:')
        vbox.addWidget(QLabel())
        vbox.addWidget(self.text_seg_in)
        vbox.addWidget(self.text_seg_data)

        hr = QFrame()
        hr.setFrameShape(QFrame.HLine)
        vbox.addWidget(hr)

        vbox1 = QVBoxLayout()
        btn_segload = QPushButton("Load DCM", self)
        btn_segload.clicked.connect(self.loadDcm)
        btn_segsave = QPushButton("Save SEG", self)
        btn_segsave.clicked.connect(self.saveSeg)
        vbox1.addWidget(btn_segload)
        vbox1.addWidget(btn_segsave)
        vbox1.addStretch(1)

        vbox2 = QVBoxLayout()
        btn_maskreg = QPushButton("Mask region", self)
        btn_maskreg.clicked.connect(self.maskRegion)
        btn_segauto = QPushButton("Automatic seg.", self)
        btn_segauto.clicked.connect(self.autoSeg)
        btn_segman = QPushButton("Manual seg.", self)
        btn_segman.clicked.connect(self.manualSeg)
        vbox2.addWidget(btn_maskreg)
        vbox2.addWidget(btn_segauto)
        vbox2.addWidget(btn_segman)
        vbox2.addStretch(1)

        hbox = QHBoxLayout()
        hbox.addStretch(1)
        hbox.addLayout(vbox1)
        hbox.addStretch(1)
        hbox.addLayout(vbox2)
        hbox.addStretch(1)

        vbox.addStretch(1)
        vbox.addLayout(hbox)
        vbox.addStretch(1)

        return vbox
Exemple #29
0
    def __init__(self, *args):
        PluginBase.__init__(self, BrickletIndustrialDual020mA, *args)

        self.dual020 = self.device

        self.str_connected = 'Sensor {0} is <font color="green">connected</font>'
        self.str_not_connected = 'Sensor {0} is <font color="red">not connected</font>'

        self.cbe_current0 = CallbackEmulator(functools.partial(self.dual020.get_current, 0),
                                             functools.partial(self.cb_current, 0),
                                             self.increase_error_count)
        self.cbe_current1 = CallbackEmulator(functools.partial(self.dual020.get_current, 1),
                                             functools.partial(self.cb_current, 1),
                                             self.increase_error_count)

        self.connected_labels = [FixedSizeLabel(self.str_not_connected.format(0)),
                                 FixedSizeLabel(self.str_not_connected.format(1))]

        self.current_current = [None, None] # float, mA

        plots = [('Sensor 0', Qt.red, lambda: self.current_current[0], lambda value: '{:.02f} mA'.format(round(value, 2))),
                 ('Sensor 1', Qt.blue, lambda: self.current_current[1], lambda value: '{:.02f} mA'.format(round(value, 2)))]
        self.plot_widget = PlotWidget('Current [mA]', plots, extra_key_widgets=self.connected_labels)

        self.sample_rate_label = QLabel('Sample Rate:')
        self.sample_rate_combo = QComboBox()
        self.sample_rate_combo.addItem('240 Hz')
        self.sample_rate_combo.addItem('60 Hz')
        self.sample_rate_combo.addItem('15 Hz')
        self.sample_rate_combo.addItem('4 Hz')
        self.sample_rate_combo.currentIndexChanged.connect(self.sample_rate_combo_index_changed)

        hlayout = QHBoxLayout()
        hlayout.addWidget(self.sample_rate_label)
        hlayout.addWidget(self.sample_rate_combo)
        hlayout.addStretch()

        line = QFrame()
        line.setFrameShape(QFrame.HLine)
        line.setFrameShadow(QFrame.Sunken)

        layout = QVBoxLayout(self)
        layout.addWidget(self.plot_widget)
        layout.addWidget(line)
        layout.addLayout(hlayout)
 def setupUi(self):
     self.setWindowTitle('SR785 Front Panel Emulation')
     frame = QFrame()
     frame.setObjectName('CRT')
     frame.setStyleSheet(
         'QFrame#CRT {border: 2px solid red; border-radius: 30px; background-color: black;}'
     )
     frame.setFixedSize(830, 630)
     frame.setContentsMargins(10, 10, 10, 10)
     self.screen = SR785_Screen(parent=self)
     l1 = QHBoxLayout()
     l1.addWidget(self.screen)
     frame.setLayout(l1)
     self.keyboard = SR785_Keyboard(parent=self)
     self.screen.softKeyClicked.connect(self.handleSoftKey)
     layout = QHBoxLayout(self)
     layout.addWidget(frame)
     layout.addWidget(self.keyboard)