예제 #1
0
    def __init__(self, button1, button2, button3, parent=None):
        super(PlaneSelectionButtons, self).__init__(parent=parent)
        current_directory = os.path.dirname(os.path.realpath(__file__))
        self.layout = QVBoxLayout(self)
        self.btn1 = QPushButton()
        self.btn1.setIcon(QtGui.QIcon(current_directory + '/images/one.png'))
        self.btn1.setIconSize(QtCore.QSize(100, 100))
        self.btn2 = QPushButton()
        self.btn2.setIcon(QtGui.QIcon(current_directory + '/images/two.png'))
        self.btn2.setIconSize(QtCore.QSize(100, 100))
        self.btn3 = QPushButton()
        self.btn3.setIcon(QtGui.QIcon(current_directory + '/images/three.png'))
        self.btn3.setIconSize(QtCore.QSize(100, 100))

        self.btn1.setFixedSize(120, 120)
        self.btn2.setFixedSize(120, 120)
        self.btn3.setFixedSize(120, 120)

        self.layout.addWidget(self.btn1)
        self.layout.addWidget(self.btn2)
        self.layout.addWidget(self.btn3)
        self.layout.setSpacing(20)

        self.btn1.clicked.connect(button1)
        self.btn2.clicked.connect(button2)
        self.btn3.clicked.connect(button3)
예제 #2
0
    def paintEvent(self, ev):
        painter = QtGui.QPainter(self)

        # calc bar offset
        y_offset = (self.height() - self._barHeight()) // 2
        ## prevent negative offset
        y_offset = 0 if y_offset < 0 else y_offset

        # frame around fraction indicator
        painter.setBrush(self.palette().dark())
        painter.save()
        ## no fill color
        b = painter.brush()
        b.setStyle(QtCore.Qt.NoBrush)
        painter.setBrush(b)
        painter.drawRect(
            QtCore.QRect(
                QtCore.QPoint(0, y_offset),
                QtCore.QSize(self._barWidth(), self._barHeight()),
            ))
        painter.restore()

        # fraction indicator
        painter.drawRect(
            QtCore.QRect(
                QtCore.QPoint(0, y_offset),
                QtCore.QSize(self._barWidth() * self._fraction,
                             self._barHeight()),
            ))
예제 #3
0
 def maximumLabelSize(self, p):
     width, height = 0, 0
     for label in self.labels:
         b = p.boundingRect(QtCore.QRectF(0, 0, 0, 0), QtCore.Qt.AlignLeft
                            | QtCore.Qt.AlignVCenter, str(label))
         width = max(b.width(), width)
         height = max(b.height(), height)
     self.labelsize = QtCore.QSize(width, height)
     return QtCore.QSize(width, height)
예제 #4
0
 def reset_window(self, MainWindow):
     sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                    QtGui.QSizePolicy.Expanding)
     sizePolicy.setHorizontalStretch(0)
     sizePolicy.setVerticalStretch(0)
     sizePolicy.setHeightForWidth(
         MainWindow.sizePolicy().hasHeightForWidth())
     MainWindow.setSizePolicy(sizePolicy)
     MainWindow.setMinimumSize(QtCore.QSize(0, 0))
     MainWindow.setMaximumSize(QtCore.QSize(self.MAX_SIZE, self.MAX_SIZE))
예제 #5
0
 def sizeHint(self):
     if self.orientation == 'vertical':
         if hasattr(self, 'hint'):
             return QtCore.QSize(self.hint.height(), self.hint.width())
         else:
             return QtCore.QSize(19, 50)
     else:
         if hasattr(self, 'hint'):
             return QtCore.QSize(self.hint.width(), self.hint.height())
         else:
             return QtCore.QSize(50, 19)
예제 #6
0
 def setup_plot(self, plot, name):
     sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                    QtGui.QSizePolicy.Expanding)
     sizePolicy.setHorizontalStretch(0)
     sizePolicy.setVerticalStretch(0)
     sizePolicy.setHeightForWidth(plot.sizePolicy().hasHeightForWidth())
     plot.setSizePolicy(sizePolicy)
     plot.setMinimumSize(QtCore.QSize(0, 0))
     plot.setMaximumSize(QtCore.QSize(16777215, 16777215))
     plot.setBaseSize(QtCore.QSize(0, 0))
     plot.setAccessibleName(_fromUtf8(""))
     plot.setInteractive(True)
     plot.setObjectName(_fromUtf8(name))
예제 #7
0
    def addParameters(self, param, root=None, depth=0, showTop=True):
        item = param.makeTreeItem(depth=depth)
        if root is None:
            root = self.invisibleRootItem()
            ## Hide top-level item
            if not showTop:
                item.setText(0, '')
                item.setSizeHint(0, QtCore.QSize(1, 1))
                item.setSizeHint(1, QtCore.QSize(1, 1))
                depth -= 1
        root.addChild(item)
        item.treeWidgetChanged()

        for ch in param:
            self.addParameters(ch, root=item, depth=depth + 1)
    def __init__(self, parent, gui_name, is_experiment=False):
        super(QtGui.QDialog, self).__init__(parent)
        self.parent = parent
        self.gui_name = gui_name
        self.generator_data = self.get_custom_gui_data(is_experiment)
        if self.generator_data:
            self.parent.print_to_log(
                f'\nLoading "{gui_name}" custom variable dialog')
            self.setWindowTitle("Set Variables")
            self.layout = QtGui.QVBoxLayout(self)
            toolBar = QtGui.QToolBar()
            toolBar.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)
            toolBar.setIconSize(QtCore.QSize(15, 15))
            self.layout.addWidget(toolBar)
            self.edit_action = QtGui.QAction(QtGui.QIcon("gui/icons/edit.svg"),
                                             "&edit", self)
            self.edit_action.setEnabled(True)
            if not is_experiment:
                toolBar.addAction(self.edit_action)
                self.edit_action.triggered.connect(self.edit)
            self.variables_grid = Custom_variables_grid(
                self, parent.board, self.generator_data)
            self.layout.addWidget(self.variables_grid)
            self.layout.setContentsMargins(0, 0, 0, 0)
            self.setLayout(self.layout)

            self.close_shortcut = QtGui.QShortcut(QtGui.QKeySequence("Ctrl+W"),
                                                  self)
            self.close_shortcut.activated.connect(self.close)
            self.using_custom_gui = True
        else:
            self.using_custom_gui = False
예제 #9
0
파일: pydisc.py 프로젝트: Bhumbra/Pyclamp
 def iniBtns(self, I=range(2)):
     if not (self.useDocks): return
     self.Bbox = [None] * 2
     self.Dock = dock()
     self.area.add(self.Dock, 'bottom')
     for i in I:
         self.Bbox[i] = self.Dock.addBbox()
         if i == 0:
             for j in range(8):
                 self.Bbox[i].addButton()
                 self.Bbox[i].setWidth(j, self.btnwidth)
                 self.Bbox[i].setIconSize(j, QtCore.QSize(1, 1))
             self.Bbox[i].Connect(0, self.toggleAccept0)
             self.Bbox[i].Connect(1, self.toggleAccept1)
             self.Bbox[i].Connect(2, self.toggleAccept2)
             self.Bbox[i].Connect(3, self.toggleAccept3)
             self.Bbox[i].Connect(4, self.toggleAccept4)
             self.Bbox[i].Connect(5, self.toggleAccept5)
             self.Bbox[i].Connect(6, self.toggleAccept6)
             self.Bbox[i].Connect(7, self.toggleAccept7)
         else:
             self.Bbox[i].addButton(QtGui.QDialogButtonBox.Cancel)
             self.Bbox[i].addButton(QtGui.QDialogButtonBox.Apply)
             self.Bbox[i].setWidth(0, self.btnWidth)
             self.Bbox[i].setWidth(1, self.btnWidth)
             self.Bbox[i].Connect(0, self.cancelClick)
             self.Bbox[i].Connect(1, self.applyClick)
예제 #10
0
    def __init__(self, driver, parent):
        super(LaseWidget, self).__init__()

        self.data_path = parent.data_path
        self.img_path = parent.img_path
        self.opened = True
        self.frame_rate = 0
        self.show_right_panel = True
        self.left_arrow = QtGui.QIcon(
            os.path.join(self.img_path, 'left_arrow.png'))
        self.right_arrow = QtGui.QIcon(
            os.path.join(self.img_path, 'right_arrow.png'))

        self.driver = driver

        # Initialize driver
        self.driver.set_dac()
        self.power_offset = self.driver.get_laser_power()

        # Layout
        self.init_layout()

        # Monitor widget
        self.monitor_widget = MonitorWidget(self.driver)

        # Plot widget

        # Laser Widget
        self.laser_widget = LaserWidget(self.driver)
        self.laser_box = QtGui.QGroupBox("Laser control")
        self.laser_box.setLayout(self.laser_widget.layout)

        # DAC Widgets
        self.dac_tabs = QtGui.QTabWidget()
        self.dac_wid = []
        n_dac = 2
        for i in range(n_dac):
            self.dac_wid.append(DacWidget(self.driver, index=i))
            self.dac_wid[i].data_updated_signal.connect(self.update_dac)
            self.dac_tabs.addTab(self.dac_wid[i], "DAC " + str(i + 1))

        self.left_panel_layout.addLayout(self.monitor_widget.layout)
        self.left_panel_layout.addWidget(self.laser_box)
        self.left_panel_layout.addWidget(self.dac_tabs)

        # Show/Hide button
        self.right_panel_button = QtGui.QPushButton()
        self.right_panel_button.setStyleSheet('QPushButton {color: green;}')
        self.right_panel_button.setIcon(self.right_arrow)
        self.right_panel_button.setIconSize(QtCore.QSize(30, 30))

        self.right_panel = QtGui.QVBoxLayout()
        self.right_panel_widget = QtGui.QWidget()

        self.lay.addLayout(self.left_panel_layout, 1)
        self.lay.addWidget(self.right_panel_button)
        self.lay.addWidget(self.right_panel_widget)

        # Connections
        self.right_panel_button.clicked.connect(self.right_panel_connect)
예제 #11
0
    def __init__(self, *args, **kwargs):
        super(DirectorySelectionWidget, self).__init__(*args, **kwargs)

        #construct file selection widget
        self.checkbox = QtGui.QCheckBox()
        self.lineedit = QtGui.QLineEdit()
        self.button = QtGui.QPushButton()
        ic = QtGui.QFileIconProvider().icon(5)
        #btn.setFixedSize(ic.actualSize(ic.availableSizes()[0]));
        ics = QtCore.QSize(20, 20)
        self.button.setFixedSize(ic.actualSize(ics))
        self.button.setText("")
        self.button.setIcon(ic)
        self.button.setIconSize(ic.actualSize(ics))
        self.button.clicked.connect(self.getDirectory)

        layout = QtGui.QHBoxLayout()
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setSpacing(0)
        layout.addWidget(self.checkbox)
        layout.addWidget(self.lineedit)
        layout.addWidget(self.button)
        self.setLayout(layout)

        self.lineedit.textChanged.connect(self.sigChanged.emit)
        self.checkbox.stateChanged.connect(self.sigChanged.emit)
예제 #12
0
 def __init__(self, params_data, changed_params_data, *args, **kwargs):
     self.params_data = params_data
     self.params_data_show = list(self.params_data.keys())
     self.changed_params_data = changed_params_data
     super().__init__(*args, **kwargs)
     self.resize(QtCore.QSize(500,500))
     self.params_table = QtGui.QTableWidget()
     self.choose_item_lineEdit = QtGui.QLineEdit(self)
     self.choose_item_lineEdit.setPlaceholderText('filter by data name')
     self.choose_item_lineEdit.textChanged.connect(self.callback_filter)
     self.btn_changed_filter = QtGui.QPushButton('Changed')
     self.btn_changed_filter.clicked.connect(self.btn_changed_filter_clicked) 
     w = QtGui.QWidget()
     self.vlayout = QtGui.QVBoxLayout(w)
     self.hlayout = QtGui.QHBoxLayout(self)
     self.setCentralWidget(w)
     self.centralWidget().setLayout(self.vlayout)
     self.vlayout.addWidget(self.params_table)
     self.vlayout.addLayout(self.hlayout)
     self.hlayout.addWidget(self.btn_changed_filter)
     self.hlayout.addWidget(self.choose_item_lineEdit)
     self.params_table.setEditTriggers(QtGui.QAbstractItemView.DoubleClicked | 
                                                  QtGui.QAbstractItemView.SelectedClicked)
     self.params_table.setSortingEnabled(False)
     self.params_table.horizontalHeader().setStretchLastSection(True)
     self.params_table.resizeColumnsToContents()
     self.params_table.setColumnCount(2)
     self.params_table.setColumnWidth(0, 120)
     self.params_table.setColumnWidth(1, 50)
     self.params_table.setHorizontalHeaderLabels(['Name', 'value'])
     self.show_all_params = True
     self.filtertext = ''
     self.update_table()
예제 #13
0
    def __init__(self):
        super(MainWindow, self).__init__()

        self.fontType = QtGui.QFont(QtGui.QFont('consolas', 10))
        self.buttonSize = QtCore.QSize(65, 40)

        self.audioFileNames = []
        self.audioFilePlayingIndex = 0
        self.audioFileCurrentChooseIndex = 0
        self.samplingFrequency = 0
        self.audioVec = 0
        self.audioList = QtWidgets.QListWidget(self)
        self.audioPlayingFlag = False
        self.audioTimeChunkIndex = 0

        self.audioPlayTimer = QtCore.QTimer()
        self.audioPlayTimer.timeout.connect(self.audio_player)

        self.timeDomainLabel = QtWidgets.QLabel(self)
        self.frequencyDomainLabel = QtWidgets.QLabel(self)

        self.browseButton = QtWidgets.QPushButton('Browse\nfile', self)
        self.playButton = QtWidgets.QPushButton('Play', self)
        self.stopButton = QtWidgets.QPushButton('Stop', self)

        self.audioTimeDomain = QtWidgets.QGraphicsView(self)
        self.audioFrequencyDomain = QtWidgets.QGraphicsView(self)

        self.init_main_window()
        self.init_buttons()
        self.init_lists()
        self.init_canvas()
        self.init_labels()
        self.init_drawer()
예제 #14
0
 def __init__(self, name ='Value : ', step = 0.01, max_slider = None, alpha=1):
     self.name = name
     super(KoheronSlider, self).__init__() 
     self.value = 0
     self.step = step
     self.flag = True
     self.alpha = alpha # Label value = alpha * spin value
     self.max_slider = max_slider
     self.layout = QtGui.QHBoxLayout() 
     self.label = QtGui.QLabel()
     self.label.setText(self.name)
     self.slider = QtGui.QSlider()
     self.slider.setMinimum(0)
     self.slider.setMaximum(self.max_slider/self.step)
     self.slider.setOrientation(QtCore.Qt.Horizontal)
     
     self.spin = QtGui.QDoubleSpinBox()
     self.spin.setRange(0,self.max_slider)
     self.spin.setSingleStep(self.step)
     self.spin.setFixedSize(QtCore.QSize(59, 26))
     
     self.layout.addWidget(self.label)
     self.layout.addWidget(self.spin)
     self.layout.addWidget(self.slider)
     
     self.setLayout(self.layout)
     
     self.slider.valueChanged.connect(self.sliderChanged)
     self.spin.valueChanged.connect(self.spinChanged)
예제 #15
0
 def show_settings(self):
     print("settings")
     self.settings_widget.show()
     self.settings_widget.resize(QtCore.QSize(500, 300))
     self.settings_widget.move(self.window().frameGeometry().topLeft() +
                               self.window().rect().center() -
                               self.settings_widget.rect().center())
    def __init__(self):
        super(TemplateBaseClass, self).__init__()

        # Create the main window
        self.ui = WindowTemplate()
        self.ui.setupUi(self)

        self.temp_layout = pg.GraphicsLayoutWidget()

        # file system tree
        self.fs_model = QtWidgets.QFileSystemModel()
        self.fs_model.setRootPath(QtCore.QDir.currentPath())
        self.ui.treeView.setModel(self.fs_model)
        self.ui.treeView.setIconSize(QtCore.QSize(25, 25))
        self.ui.treeView.setSortingEnabled(True)

        self.tree_selectionModel = self.ui.treeView.selectionModel()
        self.tree_selectionModel.selectionChanged.connect(
            self.on_treeview_selection_change)

        self.ui.comboBox.currentIndexChanged.connect(
            self.add_trace_to_temp_plot)
        self.ui.add_pushButton.clicked.connect(self.add_trace_to_mem)
        self.ui.export_pushButton.clicked.connect(self.pub_ready_plot_export)

        self.x_i = []
        self.y_i = []
        self.x_mem = []
        self.y_mem = []
        self.legend = []

        self.show()
예제 #17
0
def null_resize(widget):
    '''Call a widgets resize event with its current size.  Used when rows are added
    by user to tables to prevent mangling of the table layout.'''
    size = QtCore.QSize(widget.frameGeometry().width(),
                        widget.frameGeometry().height())
    resize = QtGui.QResizeEvent(size, size)
    widget.resizeEvent(resize)
예제 #18
0
def create_button(label, icon_type):
    """Create a button and set an icon to it."""
    icon_types = {
        'circle': ('circle.png', 16),
        'cancel': ('gtk-cancel.png', 16),
        'clear': ('clear-all.png', 16),
        'detector': ('main_icon_64x64.png', 16),
        'draw': ('system-run.png', 16),
        'load': ('file.png', 16),
        'log': ('log.png', 16),
        'main': ('main_icon_64x64.png', 64),
        'ok': ('gtk-ok.png', 16),
        'quads': ('quads.png', 16),
        'shapes': ('shapes.png', 16),
        'rundir': ('open.png', 16),
        'save': ('save.png', 16),
        'square': ('square.png', 16)
    }

    icon_name, size = icon_types[icon_type]

    button = QtGui.QPushButton(label)
    button.setIcon(get_icon(icon_name))
    button.setIconSize(QtCore.QSize(size, size))

    return button
예제 #19
0
    def __init__(self, title='null'):
        """
        :param title:
        """
        self.glview = gl.GLViewWidget()
        coord = gl.GLAxisItem()
        coord.setSize(1, 1, 1)
        # self.glview.addItem(coord)
        self.glview.setMinimumSize(QtCore.QSize(600, 500))
        self.glview.pan(1, 0, 0)
        self.glview.setCameraPosition(azimuth=180)
        self.glview.setCameraPosition(elevation=0)
        self.glview.setCameraPosition(distance=5)
        self.items = []

        self.view = QtGui.QWidget()
        self.view.window().setWindowTitle(title)
        hlayout = QtGui.QHBoxLayout()
        snap_btn = QtGui.QPushButton('&Snap')

        def take_snap():
            qimg = self.glview.readQImage()
            qimg.save('1.jpg')

        snap_btn.clicked.connect(take_snap)
        hlayout.addWidget(snap_btn)
        hlayout.addStretch()
        layout = QtGui.QVBoxLayout()

        layout.addLayout(hlayout)
        layout.addWidget(self.glview)
        self.view.setLayout(layout)
예제 #20
0
    def _initialize_boom_carpet(self):
        # Sets up the boom carpet widget

        # Add title
        self._boom_carpet_widget.addLabel("Boom Carpet",
                                          row=1,
                                          col=1,
                                          colspan=2,
                                          alignment=QtCore.Qt.AlignCenter)

        # Create radio buttons
        self._rb_base = QtGui.QRadioButton("Baseline")
        self._rb_base.setChecked(True)
        self._rb_opt = QtGui.QRadioButton("Optimum")
        self._rb_del = QtGui.QRadioButton("Delta")

        # Add to layout
        self._boom_carpet_widget.addWidget(self._rb_base, row=2, col=2)
        self._boom_carpet_widget.addWidget(self._rb_opt, row=3, col=2)
        self._boom_carpet_widget.addWidget(self._rb_del, row=4, col=2)

        # Create image
        self._boom_carpet_image = QtGui.QPixmap('image/boom_carpet.jpeg')
        self._carpet_image_label = self._boom_carpet_widget.addLabel(row=2,
                                                                     col=1,
                                                                     rowspan=3)
        self._boom_carpet_image = self._boom_carpet_image.scaled(
            QtCore.QSize(250, 250), QtCore.Qt.KeepAspectRatio)
        self._carpet_image_label.setPixmap(self._boom_carpet_image)
        self._carpet_image_label.show()
예제 #21
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)
예제 #22
0
파일: pyqtplot.py 프로젝트: Bhumbra/Pyclamp
 def addButton(self, *args, **kwds):
   if not(len(args)):
     self.Buttons.append(BaseBboxClass.addButton(self, QtGui.QDialogButtonBox.Apply, **kwds))
     self.Buttons[-1].setIconSize(QtCore.QSize(1, 1))
     self.Buttons[-1].setText("")
   else:  
     self.Buttons.append(BaseBboxClass.addButton(self, *args, **kwds))
   return self.Buttons[-1]
예제 #23
0
def myGetQTableWidgetSize(t):
    w = t.verticalHeader().width() + 4  # +4 seems to be needed
    for i in range(t.columnCount()):
        w += t.columnWidth(i)  # seems to include gridline (on my machine)
    h = t.horizontalHeader().height() + 4
    for i in range(t.rowCount()):
        h += t.rowHeight(i)
    return QtCore.QSize(w, h)
예제 #24
0
 def set_size(self, widget):
     sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                    QtGui.QSizePolicy.Expanding)
     sizePolicy.setHorizontalStretch(0)
     sizePolicy.setVerticalStretch(0)
     sizePolicy.setHeightForWidth(widget.sizePolicy().hasHeightForWidth())
     widget.setSizePolicy(sizePolicy)
     widget.setMinimumSize(QtCore.QSize(0, 0))
예제 #25
0
    def __init__(self, parent=None):

        QtGui.QWidget.__init__(self, parent)

        self.setMinimumWidth(250)
        self.buttMinimumSize = QtCore.QSize(36, 36)
        self.iconSize = QtCore.QSize(24, 24)
        self.icons = self.parent().icons

        self.setupImageToolbox()
        self.setupRoiToolbox()

        sidePanelLayout = QtGui.QVBoxLayout()
        sidePanelLayout.addWidget(self.imageToolbox)
        sidePanelLayout.addWidget(self.roiToolbox)
        sidePanelLayout.setContentsMargins(0, 0, 0, 0)
        self.setLayout(sidePanelLayout)
예제 #26
0
 def size(self):
     if is_cv2():
         h = int(self.camera.get(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT))
         w = int(self.camera.get(cv2.cv.CV_CAP_PROP_FRAME_WIDTH))
     else:
         h = int(self.camera.get(cv2.CAP_PROP_FRAME_HEIGHT))
         w = int(self.camera.get(cv2.CAP_PROP_FRAME_WIDTH))
     return QtCore.QSize(w, h)
예제 #27
0
 def sizeHint(self):
     # based on http://stackoverflow.com/a/7195443/54056
     width = sum(self.columnWidth(i) for i in range(self.columnCount()))
     width += self.verticalHeader().sizeHint().width()
     width += self.verticalScrollBar().sizeHint().width()
     width += self.frameWidth() * 2
     height = sum(self.rowHeight(i) for i in range(self.rowCount()))
     height += self.verticalHeader().sizeHint().height()
     height += self.horizontalScrollBar().sizeHint().height()
     return QtCore.QSize(width, height)
예제 #28
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(400, 300)
        self.verticalLayout = QtWidgets.QVBoxLayout(Form)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.paramFrame = QtWidgets.QFrame(Form)
        self.paramFrame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.paramFrame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.paramFrame.setObjectName("paramFrame")
        self.verticalLayout.addWidget(self.paramFrame)
        self.specLabel = QtWidgets.QLabel(Form)
        self.specLabel.setMaximumSize(QtCore.QSize(16777215, 40))
        self.specLabel.setText("")
        self.specLabel.setObjectName("specLabel")
        self.verticalLayout.addWidget(self.specLabel)
        self.commandFrame = QtWidgets.QFrame(Form)
        self.commandFrame.setMaximumSize(QtCore.QSize(16777215, 40))
        self.commandFrame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.commandFrame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.commandFrame.setObjectName("commandFrame")
        self.commandLayout = QtWidgets.QHBoxLayout(self.commandFrame)
        self.commandLayout.setObjectName("commandLayout")
        self.verticalLayout.addWidget(self.commandFrame)
        self.frame = QtWidgets.QFrame(Form)
        self.frame.setMaximumSize(QtCore.QSize(16777215, 40))
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame)
        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.startButton = QtWidgets.QPushButton(self.frame)
        self.startButton.setObjectName("startButton")
        self.horizontalLayout.addWidget(self.startButton)
        self.stopButton = QtWidgets.QPushButton(self.frame)
        self.stopButton.setObjectName("stopButton")
        self.horizontalLayout.addWidget(self.stopButton)
        self.verticalLayout.addWidget(self.frame)

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)
예제 #29
0
 def getQTableWidgetSize(self, table):
     w = table.verticalHeader().width() + 4  # +4 seems to be needed
     for i in range(table.columnCount()):
         w += table.columnWidth(
             i)  # seems to include gridline (on my machine)
     h = table.horizontalHeader().height() + 4
     for i in range(table.rowCount()):
         h += table.rowHeight(i)
     return QtCore.QSize(w + 2.0 * self.UILayout.contentsMargins().left(),
                         h)
예제 #30
0
 def updateDepth(self, depth):
     ## Change item's appearance based on its depth in the tree
     ## This allows highest-level groups to be displayed more prominently.
     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))