Beispiel #1
0
class QConditionsWidget(QFrame):
    """
    UI Component to display Turn Number, Day Time & Hour and weather combined.
    """
    def __init__(self):
        super(QConditionsWidget, self).__init__()
        self.setProperty("style", "QConditionsWidget")

        self.layout = QGridLayout()
        self.layout.setContentsMargins(0, 0, 0, 0)
        self.layout.setHorizontalSpacing(0)
        self.layout.setVerticalSpacing(0)
        self.setLayout(self.layout)

        self.time_turn_widget = QTimeTurnWidget()
        self.time_turn_widget.setStyleSheet("QGroupBox { margin-right: 0px; }")
        self.layout.addWidget(self.time_turn_widget, 0, 0)

        self.weather_widget = QWeatherWidget()
        self.weather_widget.setStyleSheet(
            "QGroupBox { margin-top: 5px; margin-left: 0px; border-left: 0px; }"
        )
        self.weather_widget.hide()
        self.layout.addWidget(self.weather_widget, 0, 1)

    def setCurrentTurn(self, turn: int, conditions: Conditions) -> None:
        """Sets the turn information display.

        :arg turn Current turn number.
        :arg conditions Current time and weather conditions.
        """
        self.time_turn_widget.setCurrentTurn(turn, conditions)
        self.weather_widget.setCurrentTurn(turn, conditions)
        self.weather_widget.show()
Beispiel #2
0
 def init(self):
     widget = QWidget()
     layout = QGridLayout(widget)
     layout.setSpacing(0)
     layout.setContentsMargins(0, 0, 0, 0)
     num = 0
     self.ColorDict = dict()
     self.ButtonList = QButtonGroup()
     for column in range(self._columns):
         for row in range(self._rows):
             if num < len(self.palette):
                 newColor = self.palette[num]
                 button = QPushButton('')
                 button.setContentsMargins(0,0,0,0)
                 button.setStyleSheet("padding: 0px;margin: 0px;")
                 button.setFixedSize(20,20)
                 self.ColorDict[button] = self.palette[num]
                 self.ButtonList.addButton(button)
                 pixmap = QPixmap(20, 20)
                 pixmap.fill(newColor)
                 button.setIcon(QIcon(pixmap))
                 layout.addWidget(button, row, column)
                 num+=1
             else:
                 break
     self.ButtonList.buttonClicked.connect(self.handleButton)
     self.setDefaultWidget(widget)
    def setDeviceStatusArea(self):
        form_box = FormGroupBox("Device Status", self)
        form_box.frame_layout.addRow(DeviceDetection.ALERT_PRESENT.value)
        # Alert type inner group box
        alert_form_box = FormGroupBox("Check all that apply:", self)

        alert_grid = QWidget(self)
        alert_lay = QGridLayout(alert_grid)
        alert_lay.setContentsMargins(0, 0, 0, 0)

        alert_lay.addWidget(DeviceDetection.AUDIO_AT_DEVICE.value, 0, 0)
        alert_lay.addWidget(DeviceDetection.IN_APP_ALERT.value, 0, 1)
        alert_lay.addWidget(DeviceDetection.AUTO_CALL.value, 0, 2)

        alert_lay.addWidget(DeviceDetection.VISUAL_AT_DEVICE.value, 1, 0)
        alert_lay.addWidget(DeviceDetection.TEXT_MSG.value, 1, 1)
        alert_lay.addWidget(DeviceDetection.CALL_BY_RETAILER.value, 1, 2)

        alert_lay.addWidget(DeviceDetection.PUSH_NOTIFY.value, 2, 0)
        alert_lay.addWidget(DeviceDetection.EMAIL.value, 2, 1)
        other_row = QWidget(self)
        other_lay = QFormLayout(other_row)
        other_lay.setContentsMargins(0, 0, 0, 0)
        other_lay.addRow("Other?", DeviceDetection.OTHER.value)
        alert_lay.addWidget(other_row, 2, 2)
        alert_form_box.frame_layout.addRow(alert_grid)

        form_box.frame_layout.addRow(alert_form_box)
        self._scroll_layout.addRow(form_box)
Beispiel #4
0
    def gui_init(self):

        self.setMaximumHeight(16)

        layout = QGridLayout()
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setSpacing(2)
        self.setLayout(layout)

        for i, but in enumerate(self.sorted_move_buttons):

            if but == abs(but):
                pref = 'p'
            else:
                pref = 'm'

            def some():
                print('SOME')

            button = LongButton(self)
            button.released.connect(some)
            button.setStyleSheet("padding: 0px;")
            layout.addWidget(button, 0, i, Qt.AlignCenter)

            if self.sorted_move_buttons[but]:
                self.__long_buttos__.append(button)

            button.setIcon(Icon(r'jog\JOG{}{}_32'.format(pref, abs(but))))
            button.setIconSize(QSize(32, 32))
            button.setFixedSize(QSize(32, 32))
            button.setText("")
            button.pressed.connect(partial(self.buttons_action, but))
Beispiel #5
0
    def _layout(
            self
    ) -> Tuple[QGridLayout, QComboBox, QLabel, QLabel, QListWidget]:
        layout = QGridLayout()
        layout.setContentsMargins(0, 0, 0, 0)

        page_label = QLabel('Page:')
        page_label.setFixedWidth(40)
        layout.addWidget(page_label, 0, 0)

        # Page select dropdown
        page_select = QComboBox()
        page_select.currentTextChanged.connect(self._on_page_changed)
        page_select.setFixedWidth(60)
        layout.addWidget(page_select, 0, 1)

        # Query results and image label
        query_label = QLabel('Query:')
        layout.addWidget(query_label, 0, 2)
        viewing_label = QLabel('Viewing:')
        layout.addWidget(viewing_label, 0, 3)

        # Gallery
        gallery = QListWidget()
        gallery.setFlow(QListWidget.LeftToRight)
        gallery.setWrapping(False)
        gallery.setViewMode(QListWidget.IconMode)
        gallery.setIconSize(QSize(self.thumbnail_width, self.thumbnail_height))
        gallery.currentItemChanged.connect(self._on_item_changed)
        layout.addWidget(gallery, 1, 0, 1, 4)

        return layout, page_select, query_label, viewing_label, gallery
Beispiel #6
0
    def update_params(self, plist: list) -> QGridLayout:
        """Update camera's paramters and sliders shown on the windows.
        """
        #self.current_params.clear()
        self.current_params = self.camera.get_current_params("selected", plist)
        for key, value in self.current_params.items():
            self.add_slider(key)

        # add sliders
        grid = QGridLayout()
        grid.setSpacing(15)
        grid.setContentsMargins(20, 20, 20, 20)
        for row, param in enumerate(self.current_params):
            grid.addWidget(self.current_params[param]["slider_label"], row, 0)
            grid.addWidget(self.current_params[param]["slider"], row, 1)
            grid.addWidget(self.current_params[param]["slider_value"], row, 2)
        if len(self.current_params) > 15:
            self.param_separate = True
        else:
            self.param_separate = False
        self.slider_group = grid
        self.update_mainlayout()
        self.update_prop_table()
        self.write_text("update sliders")
        return grid
Beispiel #7
0
    def gui_init(self):

        layout = QGridLayout()
        layout.setContentsMargins(0, 0, 0, 0)
        self.setLayout(layout)

        label = QLabel(self.__label, self)
        layout.addWidget(label, 0, 0, Qt.AlignCenter)

        self.__edit = QLineEdit(self.__text, self)
        self.__edit.setFixedWidth(self.input_width)
        if self.__ipRegex:
            ipValidator = QRegExpValidator(self.__ipRegex)
            self.__edit.setValidator(ipValidator)
        layout.addWidget(self.__edit, 0, 1, Qt.AlignCenter)

        self.__edit.textChanged.connect(self.__changed__)

        if self.callback:
            self.__edit.textEdited.connect(partial(self.callback))

        if self.__runner:
            run_but = QPushButton(self)
            run_but.setText(self.parent.qapp.tr("Run"))
            layout.addWidget(run_but, 0, 3, Qt.AlignCenter)

            run_but.pressed.connect(self.__runner__)
Beispiel #8
0
class Forecast:
    def __init__(self):
        self.layout = QGridLayout()
        self.wrapper = QFrame()
        self.wrapper.setLayout(self.layout)
        self.layout.setSpacing(0)
        self.layout.setContentsMargins(0, 0, 0, 0)

        self.icon = QSvgWidget()
        self.day = QLabel()
        self.min_temp = QLabel()
        self.max_temp = QLabel()
        self.precip = QLabel()
        self.wind = QLabel()

        self.layout.addWidget(self.icon, 0, 0, 1, 1)
        self.layout.addWidget(self.day, 1, 0, 1, 1)
        self.layout.addWidget(self.min_temp, 1, 1, 1, 1)
        self.layout.addWidget(self.max_temp, 0, 1, 1, 1)
        self.layout.addWidget(self.wind, 0, 2, 1, 1)
        self.layout.addWidget(self.precip, 1, 2, 1, 1)

    def update(self, values):
        self.icon.load(values.icon)
        self.day.setText(values.day)
        self.min_temp.setText(values.min_temp)
        self.max_temp.setText(values.max_temp)
        self.precip.setText(values.precip)
        self.wind.setText(values.wind)
Beispiel #9
0
    def _layout(
            self) -> Tuple[QGridLayout, FileTreeView, FileTagView, ImageView]:
        layout = QGridLayout()
        layout.setContentsMargins(5, 5, 5, 5)

        splitter = QSplitter()
        layout.addWidget(splitter, 0, 0, 0, 0)

        left_splitter = QSplitter(Qt.Vertical)
        splitter.addWidget(left_splitter)

        # Top left
        file_tree = FileTreeView(self._on_file_tree_selection_changed)
        left_splitter.addWidget(file_tree)

        # Bottom left
        tagging = FileTagView(self.global_state)
        left_splitter.addWidget(tagging)

        # Right
        image = ImageView()
        splitter.addWidget(wrap_image(image))

        # Initialize equal widths (needs to be set at the end)
        splitter.setSizes([1000000, 1000000])

        return layout, file_tree, tagging, image
Beispiel #10
0
class Current:
    def __init__(self):
        self.layout = QGridLayout()
        self.wrapper = QFrame()
        self.wrapper.setLayout(self.layout)
        self.layout.setSpacing(0)
        self.layout.setContentsMargins(0, 0, 0, 0)

        self.time = QLabel()
        self.icon = QSvgWidget()
        self.temp = QLabel()
        self.precip = QLabel()
        self.wind = QLabel()

        self.layout.addWidget(self.time, 0, 0, 1, 2)
        self.layout.addWidget(self.icon, 1, 0, 3, 1)
        self.layout.addWidget(self.temp, 1, 1, 1, 1)
        self.layout.addWidget(self.wind, 2, 1, 1, 1)
        self.layout.addWidget(self.precip, 3, 1, 1, 1)

    def update(self, values):
        self.icon.load(values.icon)
        self.time.setText(values.time)
        self.temp.setText(values.temp)
        self.wind.setText(values.wind)
        self.precip.setText(values.precip)
Beispiel #11
0
class Layout(Slots):
    def __init__(self):
        super().__init__()

    def stored_location_layout(self):
        self.stored_directories_title = QLabel(constants.stored_dir_str)

        # Combo box and its properties
        self.stored_dir_dropdown = QComboBox()
        self.stored_dir_dropdown.addItems(self.get_list_items())
        self.stored_dir_dropdown.setCursor(QCursor(Qt.PointingHandCursor))
        self.stored_dir_dropdown.setStyleSheet(stored_dir_dropdown_styles)

        # Layout grid for combo box widget
        self.stored_dirs_layout = QGridLayout()
        self.stored_dirs_layout.addWidget(self.stored_directories_title, 0, 0)
        self.stored_dirs_layout.addWidget(self.stored_dir_dropdown, 0, 1)
        self.stored_dirs_layout.setColumnStretch(1, 2)
        self.stored_dirs_layout.setContentsMargins(0, 16, 0, 32)

        return self.stored_dirs_layout

    def push_to_group_layout(self):
        # Create a group
        self.group_push_to = QGroupBox(constants.push_branch_str)
        self.group_push_to.setStyleSheet(group_widgets_styles)

        # Create the layout for the branch widgets
        self.pushToLayout = QVBoxLayout()
        self.pushToLayout.setAlignment(Qt.AlignTop)
        self.pushToLayout.setContentsMargins(16, 24, 16, 24)

        # Set the layout to the group
        self.group_push_to.setLayout(self.pushToLayout)

        # Create the staging button and its properties
        self.staging_btn = QPushButton(constants.master_to_staging_str)
        self.staging_btn.clicked.connect(
            lambda: self.handle_branch_push_to_git(constants.master, constants.
                                                   staging))
        self.staging_btn.setCursor(QCursor(Qt.PointingHandCursor))
        self.staging_btn.setStyleSheet(button_styles)

        # Create the production button and its properties
        self.prod_btn = QPushButton(constants.staging_to_prod_str)
        self.prod_btn.setCursor(QCursor(Qt.PointingHandCursor))
        self.prod_btn.clicked.connect(lambda: self.handle_branch_push_to_git(
            constants.staging, constants.production))
        self.prod_btn.setStyleSheet(button_styles)

        self.thread = Thread()
        self.thread.finished.connect(lambda: self.staging_btn.setEnabled(True))
        self.thread.finished.connect(lambda: self.prod_btn.setEnabled(True))

        # Add the button widgets to the layout
        self.pushToLayout.addWidget(self.staging_btn)
        self.pushToLayout.addWidget(self.prod_btn)

        return self.group_push_to
    def displayWidgets(self):
        """
        Configura os widgets da app
        """
        grid = QGridLayout()

        titl_lbl = QLabel("To Do List")
        titl_lbl.setFont(QFont('Arial', 24))
        titl_lbl.setAlignment(Qt.AlignCenter)

        close_btn = QPushButton("Fechar")
        close_btn.clicked.connect(self.close)

        pend_lbl = QLabel("Tarefas")
        pend_lbl.setFont(QFont('Arial', 20))
        pend_lbl.setAlignment(Qt.AlignCenter)
        comp_lbl = QLabel("Compromissos")
        comp_lbl.setFont(QFont('Arial', 20))
        comp_lbl.setAlignment(Qt.AlignCenter)

        pend_grd = QGridLayout()
        pend_grd.setContentsMargins(5, 5, 5, 5)

        pend_grd.addWidget(pend_lbl, 0, 0, 1, 2)

        for pos in range(1, 15):
            cbox = QCheckBox()
            cbox.setChecked(False)
            ledit = QLineEdit()
            ledit.setMinimumWidth(200)
            pend_grd.addWidget(cbox, pos, 0)
            pend_grd.addWidget(ledit, pos, 1)

        mat_lbl = QLabel("Manhã")
        mat_lbl.setFont(QFont('Arial', 16))
        mat_tedit = QTextEdit()
        ves_lbl = QLabel("Tarde")
        ves_lbl.setFont(QFont('Arial', 16))
        ves_tedit = QTextEdit()
        not_lbl = QLabel("Noite")
        not_lbl.setFont(QFont('Arial', 16))
        not_tedit = QTextEdit()

        vbox = QVBoxLayout()
        vbox.setContentsMargins(5, 5, 5, 5)
        vbox.addWidget(comp_lbl)
        vbox.addWidget(mat_lbl)
        vbox.addWidget(mat_tedit)
        vbox.addWidget(ves_lbl)
        vbox.addWidget(ves_tedit)
        vbox.addWidget(not_lbl)
        vbox.addWidget(not_tedit)

        grid.addWidget(titl_lbl, 0, 0, 1, 2)
        grid.addLayout(pend_grd, 1, 0)
        grid.addLayout(vbox, 1, 1)
        grid.addWidget(close_btn, 2, 0, 1, 2)

        self.setLayout(grid)
Beispiel #13
0
class PageAllegroMonitored(QWidget):
    def __init__(self, parent=None, shared_dict=None):
        QWidget.__init__(self)
        parent.addWidget(self)
        self.shared_dict = shared_dict
        self.parent = parent
        self.setLayoutDirection(Qt.LeftToRight)

        self.gridLayout = QGridLayout(self)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)

        self.scrollArea = QScrollArea(self)
        self.scrollArea.setStyleSheet("""QScrollArea{border: none;}""")
        self.scrollArea.setVerticalScrollBarPolicy(Qt.ScrollBarAsNeeded)
        self.scrollArea.setSizeAdjustPolicy(QAbstractScrollArea.AdjustIgnored)
        self.scrollArea.setWidgetResizable(True)
        self.gridLayout.addWidget(self.scrollArea, 0, 0, 1, 1)

        self.scrollAreaWidgetContents = QWidget()
        self.scrollAreaWidgetContents.setGeometry(QRect(0, 0, 654, 479))
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)

        self.gridLayout_scroll_area = QGridLayout(
            self.scrollAreaWidgetContents)
        self.gridLayout_scroll_area.setSpacing(0)
        self.gridLayout_scroll_area.setContentsMargins(40, 0, 40, -1)

        self.label_title = QLabel("List of your monitored objects",
                                  self.scrollAreaWidgetContents)
        self.label_title.setStyleSheet(styles.label_title)
        self.label_title.setAlignment(Qt.AlignCenter)
        self.gridLayout_scroll_area.addWidget(self.label_title)

        self.spacer = QSpacerItem(20, 40, QSizePolicy.Minimum,
                                  QSizePolicy.Expanding)

        self.load_list()

    def load_list(self):
        elements = data.read_monitored_elements()
        for element in elements:
            e = ElementAllegroMonitored(element['name'], element['link'],
                                        element['is_done'], element['price'],
                                        element['xpath'], element['time'],
                                        element['is_monitoring'],
                                        self.scrollAreaWidgetContents,
                                        self.shared_dict)
            self.gridLayout_scroll_area.addWidget(e)

        self.gridLayout_scroll_area.addItem(self.spacer)

    def add_to_list(self, name, link, is_done, price, xpath, time,
                    is_monitoring):
        self.gridLayout_scroll_area.removeItem(self.spacer)
        e = ElementAllegroMonitored(name, link, is_done, price, xpath, time,
                                    is_monitoring)
        self.gridLayout_scroll_area.addWidget(e)
        self.gridLayout_scroll_area.addItem(self.spacer)
Beispiel #14
0
    def initializeUI(self):
        main_grid = QGridLayout()
        todo_title = QLabel("Список дел на день")
        todo_title.setFont(QFont('Arial', 24))
        todo_title.setAlignment(Qt.AlignCenter)

        # create section labels for to do list
        mustdo_label = QLabel("Надо сделать")
        mustdo_label.setFont(QFont('Arial', 20))
        mustdo_label.setAlignment(Qt.AlignCenter)
        appts_label = QLabel("Запланированные встречи")
        appts_label.setFont(QFont('Arial', 20))
        appts_label.setAlignment(Qt.AlignCenter)

        # create must do section
        mustdo_grid = QGridLayout()
        mustdo_grid.setContentsMargins(5, 5, 5, 5)

        mustdo_grid.addWidget(mustdo_label, 0, 0, 1, 2)

        # create checkboxes and line edit widgets
        for position in range(1, 15):
            checkbox = QCheckBox()
            checkbox.setObjectName(str(position))
            linedit = QLineEdit("")
            linedit.setMinimumWidth(200)
            mustdo_grid.addWidget(checkbox, position, 0)
            mustdo_grid.addWidget(linedit, position, 1)
            self.dictToDo[checkbox] = linedit

        # create labels for appointments section
        morning_label = QLabel("Утро")
        morning_label.setFont(QFont('Arial', 16))
        noon_label = QLabel("Обед")
        noon_label.setFont(QFont('Arial', 16))
        evening_label = QLabel("Вечер")
        evening_label.setFont(QFont('Arial', 16))
        # create vertical layout and add widgets
        appt_v_box = QVBoxLayout()
        appt_v_box.setContentsMargins(5, 5, 5, 5)
        evening_entry = QTextEdit()
        noon_entry = QTextEdit()
        morning_entry = QTextEdit()
        appt_v_box.addWidget(appts_label)
        appt_v_box.addWidget(morning_label)
        appt_v_box.addWidget(morning_entry)
        appt_v_box.addWidget(noon_label)
        appt_v_box.addWidget(noon_entry)
        appt_v_box.addWidget(evening_label)
        appt_v_box.addWidget(evening_entry)
        self.dayMeet = [morning_entry, noon_entry, evening_entry]
        # add other layouts to main grid layout
        main_grid.addWidget(todo_title, 0, 0, 1, 2)
        main_grid.addLayout(mustdo_grid, 1, 0)
        main_grid.addLayout(appt_v_box, 1, 1)
        main_grid.addWidget(self.clear_button, 2, 0, 1, 2)
        self.setLayout(main_grid)
Beispiel #15
0
    def __init__(self, data: PatientBoneAgeJournal = None):
        super().__init__(data)

        self.table = PatientBoneAgeJournalTable(self.data)
        self.table.record_selected.connect(self.record_selected)

        grid_layout = QGridLayout()
        grid_layout.setContentsMargins(0, 0, 0, 0)
        grid_layout.addWidget(self.table)
        self.setLayout(grid_layout)
Beispiel #16
0
    def _set_layout(self):
        """
        Creates this Widget's Layout
        """
        box = QGridLayout()
        box.setContentsMargins(0, 0, 0, 0)

        box.addWidget(self.toolbar, 0, 0)
        box.addWidget(self.out, 1, 0)

        self.setLayout(box)
Beispiel #17
0
    def __init__(self, parent, data):
        super(SegmentsWidget, self).__init__(parent)

        layout = QGridLayout()
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setVerticalSpacing(1)
        layout.setHorizontalSpacing(
            UIContext.getScaledWindowSize(16, 16).width())

        self.segments = []
        for segment in data.segments:
            if segment.readable or segment.writable or segment.executable:
                self.segments.append(segment)
        self.segments.sort(key=lambda segment: segment.start)

        row = 0
        for segment in self.segments:
            begin = "0x%x" % segment.start
            end = "0x%x" % segment.end

            permissions = ""
            if segment.readable:
                permissions += "r"
            else:
                permissions += "-"
            if segment.writable:
                permissions += "w"
            else:
                permissions += "-"
            if segment.executable:
                permissions += "x"
            else:
                permissions += "-"

            rangeLayout = QHBoxLayout()
            rangeLayout.setContentsMargins(0, 0, 0, 0)
            beginLabel = headers.ClickableAddressLabel(begin)
            dashLabel = QLabel("-")
            dashLabel.setFont(binaryninjaui.getMonospaceFont(self))
            endLabel = headers.ClickableAddressLabel(end)
            rangeLayout.addWidget(beginLabel)
            rangeLayout.addWidget(dashLabel)
            rangeLayout.addWidget(endLabel)
            layout.addLayout(rangeLayout, row, 0)

            permissionsLabel = QLabel(permissions)
            permissionsLabel.setFont(binaryninjaui.getMonospaceFont(self))
            layout.addWidget(permissionsLabel, row, 1)

            row += 1

        layout.setColumnStretch(2, 1)
        self.setLayout(layout)
Beispiel #18
0
class Funcoes:
    def limpa_formulario(self, frm):
        for i in reversed(range(len(frm.children()))):
            frm.children()[i].deleteLater()
            print(frm.layout())

    def set_grid_layout_conteudo(self, frame):
        self.grl_fra_conteudo = QGridLayout(frame)
        self.grl_fra_conteudo.setSpacing(0)
        self.grl_fra_conteudo.setObjectName(u"grl_fra_conteudo")
        self.grl_fra_conteudo.setSizeConstraint(QLayout.SetMinimumSize)
        self.grl_fra_conteudo.setContentsMargins(0, 0, 0, 0)
Beispiel #19
0
    def initializeUI(self):
        main_grid = QGridLayout()
        todo_title = QLabel("Список дел на день")
        todo_title.setFont(QFont('Arial', 24))
        todo_title.setAlignment(Qt.AlignCenter)
        # создание меток
        mustdo_label = QLabel("Надо сделать")
        mustdo_label.setFont(QFont('Arial', 20))
        mustdo_label.setAlignment(Qt.AlignCenter)
        appts_label = QLabel("Запланированные встречи")
        appts_label.setFont(QFont('Arial', 20))
        appts_label.setAlignment(Qt.AlignCenter)
        # создание секций
        mustdo_grid = QGridLayout()
        mustdo_grid.setContentsMargins(5, 5, 5, 5)
        mustdo_grid.addWidget(mustdo_label, 0, 0, 1, 2)
        # создание чекбоксов с полями ввода
        for position in range(1, 15):
            checkbox = QCheckBox()
            checkbox.setObjectName(str(position))
            linedit = QLineEdit("")
            linedit.setMinimumWidth(200)
            mustdo_grid.addWidget(checkbox, position, 0)
            mustdo_grid.addWidget(linedit, position, 1)
            self.dictToDo[checkbox] = linedit

        # секция встреч
        morning_label = QLabel("Утро")
        morning_label.setFont(QFont('Arial', 16))
        noon_label = QLabel("Обед")
        noon_label.setFont(QFont('Arial', 16))
        evening_label = QLabel("Вечер")
        evening_label.setFont(QFont('Arial', 16))
        # первичная компоновка
        appt_v_box = QVBoxLayout()
        appt_v_box.setContentsMargins(5, 5, 5, 5)
        evening_entry = QTextEdit()
        noon_entry = QTextEdit()
        morning_entry = QTextEdit()
        appt_v_box.addWidget(appts_label)
        appt_v_box.addWidget(morning_label)
        appt_v_box.addWidget(morning_entry)
        appt_v_box.addWidget(noon_label)
        appt_v_box.addWidget(noon_entry)
        appt_v_box.addWidget(evening_label)
        appt_v_box.addWidget(evening_entry)
        self.dayMeet = [morning_entry, noon_entry, evening_entry]
        # завершение компоновки
        main_grid.addWidget(todo_title, 0, 0, 1, 2)
        main_grid.addLayout(mustdo_grid, 1, 0)
        main_grid.addLayout(appt_v_box, 1, 1)
        self.setLayout(main_grid)
Beispiel #20
0
    def __init__(self, parent, db_mngr, *db_maps):
        """Initialize class.

        Args:
            parent (SpineDBEditor)
            db_mngr (SpineDBManager)
            db_maps (DiffDatabaseMapping): the dbs to select items from
        """
        super().__init__(parent)
        self.db_mngr = db_mngr
        self.db_maps = db_maps
        top_widget = QWidget()
        top_layout = QHBoxLayout(top_widget)
        db_maps_group_box = QGroupBox("Databases", top_widget)
        db_maps_layout = QVBoxLayout(db_maps_group_box)
        db_maps_layout.setContentsMargins(self._MARGIN, self._MARGIN,
                                          self._MARGIN, self._MARGIN)
        self.db_map_check_boxes = {
            db_map: QCheckBox(db_map.codename, db_maps_group_box)
            for db_map in self.db_maps
        }
        for check_box in self.db_map_check_boxes.values():
            check_box.stateChanged.connect(lambda _: QTimer.singleShot(
                0, self._set_item_check_box_enabled))
            check_box.setChecked(True)
            db_maps_layout.addWidget(check_box)
        items_group_box = QGroupBox("Items", top_widget)
        items_layout = QGridLayout(items_group_box)
        items_layout.setContentsMargins(self._MARGIN, self._MARGIN,
                                        self._MARGIN, self._MARGIN)
        self.item_check_boxes = {
            item_type: QCheckBox(item_type, items_group_box)
            for item_type in self._ITEM_TYPES
        }
        for k, check_box in enumerate(self.item_check_boxes.values()):
            row = k // self._COLUMN_COUNT
            column = k % self._COLUMN_COUNT
            check_box.setChecked(True)
            items_layout.addWidget(check_box, row, column)
        top_layout.addWidget(db_maps_group_box)
        top_layout.addWidget(items_group_box)
        button_box = QDialogButtonBox(self)
        button_box.setStandardButtons(QDialogButtonBox.Cancel
                                      | QDialogButtonBox.Ok)
        button_box.accepted.connect(self.accept)
        button_box.rejected.connect(self.reject)
        layout = QVBoxLayout(self)
        layout.addWidget(top_widget)
        layout.addWidget(button_box)
        layout.setContentsMargins(self._MARGIN, self._MARGIN, self._MARGIN,
                                  self._MARGIN)
        self.setAttribute(Qt.WA_DeleteOnClose)
Beispiel #21
0
    def __set_layout(self):
        """
        Creates this Widget's Layout
        """
        box = QGridLayout()
        box.setContentsMargins(0, 0, 0, 0)

        box.addWidget(self.lab_label, 0, 0)
        box.addWidget(self.labels_view, 1, 0)
        box.addWidget(self.lab_symbols, 0, 1)
        box.addWidget(self.symbols_view, 1, 1)

        self.setLayout(box)
Beispiel #22
0
class PageAbout(QWidget):
    def __init__(self, parent=None):
        QWidget.__init__(self)
        parent.addWidget(self)
        self.gridLayout_about = QGridLayout(self)

        self.frame_about = QFrame(self)
        self.frame_about.setEnabled(True)
        self.frame_about.setStyleSheet(styles.frame_about)
        self.frame_about.setFrameShape(QFrame.StyledPanel)
        self.frame_about.setFrameShadow(QFrame.Raised)
        self.gridLayout_about.addWidget(self.frame_about, 0, 1, 1, 1)

        self.gridLayout_frame_about = QGridLayout(self.frame_about)
        self.gridLayout_frame_about.setContentsMargins(-1, 60, -1, -1)

        self.spacer_about_l = QSpacerItem(40, 20, QSizePolicy.Expanding,
                                          QSizePolicy.Minimum)
        self.spacer_about_r = QSpacerItem(40, 20, QSizePolicy.Expanding,
                                          QSizePolicy.Minimum)
        self.spacer_about_b = QSpacerItem(20, 40, QSizePolicy.Minimum,
                                          QSizePolicy.Expanding)
        self.gridLayout_frame_about.addItem(self.spacer_about_l, 0, 0, 1, 1)
        self.gridLayout_frame_about.addItem(self.spacer_about_r, 0, 2, 1, 1)
        self.gridLayout_frame_about.addItem(self.spacer_about_b, 3, 1, 1, 1)

        self.label_about_name = QLabel("WebCheck", self.frame_about)
        self.label_about_name.setStyleSheet(styles.label_about_name)
        self.label_about_name.setAlignment(Qt.AlignCenter)
        self.gridLayout_frame_about.addWidget(self.label_about_name, 0, 1, 1,
                                              1)

        self.label_about_name = QLabel(
            "Made by Eugene Oros & Michał Piotrowski", self.frame_about)
        self.label_about_name.setStyleSheet(styles.label_about_made)
        self.label_about_name.setAlignment(Qt.AlignCenter)
        self.gridLayout_frame_about.addWidget(self.label_about_name, 1, 1, 1,
                                              1)

        self.label_about_version = QLabel("Version 1.0.0", self.frame_about)
        self.label_about_version.setStyleSheet(styles.label_about_version)
        self.label_about_version.setAlignment(Qt.AlignCenter)
        self.gridLayout_frame_about.addWidget(self.label_about_version, 2, 0,
                                              1, 3)

        self.label_about_c = QLabel("\u00a9 All rights reserved",
                                    self.frame_about)
        self.label_about_c.setStyleSheet(styles.label_about_c)
        self.label_about_c.setAlignment(Qt.AlignCenter)
        self.gridLayout_frame_about.addWidget(self.label_about_c, 3, 0, 1, 3)
Beispiel #23
0
    def __init__(self, game: Game) -> None:
        super().__init__("Intel")
        self.setProperty("style", "IntelSummary")

        self.game = game

        columns = QHBoxLayout()
        self.setLayout(columns)

        summary = QGridLayout()
        summary.setContentsMargins(5, 5, 5, 5)

        air_superiority = QLabel("Air superiority:")
        summary.addWidget(air_superiority, 0, 0)
        self.air_strength = QLabel()
        summary.addWidget(self.air_strength, 0, 1)

        front_line = QLabel("Front line:")
        summary.addWidget(front_line, 1, 0)
        self.ground_strength = QLabel()
        summary.addWidget(self.ground_strength, 1, 1)

        economy = QLabel("Economic strength:")
        summary.addWidget(economy, 2, 0)
        self.economic_strength = QLabel()
        summary.addWidget(self.economic_strength, 2, 1)

        # some dirty styling to make the labels show up well on the button
        button_text_style = "background-color: rgba(0,0,0,0%); color: white;"
        air_superiority.setStyleSheet(button_text_style)
        front_line.setStyleSheet(button_text_style)
        economy.setStyleSheet(button_text_style)
        self.air_strength.setStyleSheet(button_text_style)
        self.ground_strength.setStyleSheet(button_text_style)
        self.economic_strength.setStyleSheet(button_text_style)

        self.details = QPushButton()
        self.details.setMinimumHeight(50)
        self.details.setMinimumWidth(210)
        self.details.setLayout(summary)
        columns.addWidget(self.details)
        self.details.clicked.connect(self.open_details_window)
        self.details.setEnabled(False)

        self.update_summary()

        self.details_window: Optional[IntelWindow] = None
Beispiel #24
0
    def __init__(self, *args, **kwargs):
        super(VarietyOptionWidget, self).__init__(*args, **kwargs)
        layout = QVBoxLayout()
        layout.setContentsMargins(QMargins(1, 1, 1, 1))
        opts_layout = QHBoxLayout()
        opts_layout.setContentsMargins(QMargins(0, 0, 0, 0))

        self.add_button = QPushButton("新建品种", self)
        opts_layout.addWidget(self.add_button)
        opts_layout.addStretch()
        layout.addLayout(opts_layout)

        # 新建品种的widget
        self.new_variety_widget = QWidget(self)
        add_layout = QGridLayout()
        add_layout.setContentsMargins(QMargins(100, 50, 100, 50))

        add_layout.addWidget(QLabel("所属类别:", self), 0, 0)
        self.belong_group = QComboBox(self)
        add_layout.addWidget(self.belong_group, 0, 1)

        add_layout.addWidget(QLabel("属交易所", self), 1, 0)
        self.belong_exchange = QComboBox(self)
        add_layout.addWidget(self.belong_exchange, 1, 1)

        add_layout.addWidget(QLabel("中文名称", self), 2, 0)
        self.zh_name = QLineEdit(self)
        add_layout.addWidget(self.zh_name, 2, 1)

        add_layout.addWidget(QLabel("交易代码", self), 3, 0)
        self.en_name = QLineEdit(self)
        add_layout.addWidget(self.en_name, 3, 1)

        self.commit_new_button = QPushButton("确定提交", self)
        add_layout.addWidget(self.commit_new_button, 4, 0, 1, 2)

        self.new_variety_widget.setLayout(add_layout)

        layout.addWidget(self.new_variety_widget)
        self.new_variety_widget.hide()  # 隐藏新建填写信息的界面

        self.variety_table = QTableWidget(self)
        layout.addWidget(self.variety_table)

        self.setLayout(layout)
Beispiel #25
0
class Editor(QMainWindow):
    def __init__(self, parent, obj):
        super(Editor, self).__init__()
        self.parent = parent
        self.obj = obj

        self.centralWidget = QWidget()
        self.grid = QGridLayout(self.centralWidget)

        self.script = self.menuBar().addAction("Sauvegarder", self.save)

        self.doc = self.menuBar().addAction("Documentation", self.get_doc)

        self.editor = EditorWidget(self)
        self.editor.setPlainText(self.obj.script)

        self.grid.addWidget(self.editor, 0, 0)

        self.grid.setContentsMargins(0, 0, 0, 0)
        self.grid.setSpacing(0)
        self.setCentralWidget(self.centralWidget)
        self.setWindowTitle("PyEngine - Script - " + self.obj.name)

    def get_doc(self):
        if self.obj.type_ in ["World", "Window"]:
            url = "https://pyengine-doc.readthedocs.io/fr/latest/API/" + self.obj.type_ + ".html"
        elif self.obj.type_ in ["Entity", "Tilemap"]:
            url = "https://pyengine-doc.readthedocs.io/fr/latest/API/Entities/" + self.obj.type_ + ".html"
        elif "Component" in self.obj.type_:
            url = "https://pyengine-doc.readthedocs.io/fr/latest/API/Components/" + self.obj.type_ + ".html"
        else:
            raise TypeError("Unknown documentation for type : " +
                            self.obj.type_)
        webbrowser.open(url)

    def save(self):
        self.obj.script = self.editor.toPlainText()

    def closeEvent(self, event) -> None:
        if self.obj.script != self.editor.toPlainText():
            if QMessageBox.question(
                    self, "PyEngine - Editeur",
                    "Voulez vous enregistrer le script ?") == QMessageBox.Yes:
                self.save()
        event.accept()
Beispiel #26
0
class App(QApplication):
    def __init__(self, sys_argv):
        super().__init__(sys_argv)

        # Show main window
        self.view = QMainWindow()

        self.centralWidget = QWidget(self.view)

        self.gridLayout = QGridLayout(self.centralWidget)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setSpacing(0)

        self.video_item = QVideoWidget()

        self.gridLayout.addWidget(self.video_item)

        self.view.setCentralWidget(self.centralWidget)

        self.mediaPlayer = QMediaPlayer(None, QMediaPlayer.VideoSurface)

        self.grabber = VideoFrameGrabber(self.video_item, self)
        self.mediaPlayer.setVideoOutput(self.grabber)

        self.grabber.frameAvailable.connect(self.process_frame)

        self.mediaPlayer.durationChanged.connect(self.update_duration)
        self.mediaPlayer.positionChanged.connect(self.update_slider_position)

        local = QUrl.fromLocalFile('D:\\SampleData\\albamonSample.mp4')
        media = QMediaContent(local)
        self.mediaPlayer.setMedia(media)
        self.mediaPlayer.play()

        self.view.show()

    def process_frame(self, image):
        # Save image here
        image.save('D:\\SampleData/temp/{}.jpg'.format(str(uuid.uuid4())))

    def update_duration(self):
        pass

    def update_slider_position(self):
        pass
Beispiel #27
0
    def __set_layout(self):
        """
        Initializes the layout of this widget
        """
        layout = QGridLayout()
        layout.setContentsMargins(0, 0, 0, 0)

        # Widgets
        layout.addWidget(self.view_students, 0, 1)
        layout.addWidget(self.v_canvas, 1, 0, 1, 3)
        layout.addWidget(self.view_teacher, 2, 0, 1, 3)

        # Alignments
        layout.setAlignment(self.view_students, Qt.AlignCenter)
        layout.setAlignment(self.v_canvas, Qt.AlignCenter)
        layout.setAlignment(self.view_teacher, Qt.AlignCenter)

        self.setLayout(layout)
Beispiel #28
0
    def error_modal(self, window_title, msg_str):
        modal = QDialog(self)
        modal.setWindowTitle(window_title)
        msg = QLabel(msg_str)
        msg.setWordWrap(True)
        msg.setStyleSheet("""margin-bottom: 1em;""")
        msg.setAlignment(Qt.AlignCenter)

        buttonBox = QDialogButtonBox(QDialogButtonBox.Close)
        buttonBox.rejected.connect(modal.reject)
        buttonBox.setCenterButtons(True)

        layout = QGridLayout()
        layout.addWidget(msg, 0, 0)
        layout.addWidget(buttonBox, 1, 0)
        layout.setContentsMargins(16, 16, 16, 16)
        modal.setLayout(layout)

        modal.exec_()
Beispiel #29
0
    def __init__(self, data: ColorTransferFunction = None):
        super().__init__(data)

        self.chart = ColorTransferFunctionChart(data)
        # self.chart.legend().hide()
        self.chart_rect_f = QRectF()

        self.axis_x = QtCharts.QValueAxis()
        # self.axis_x.setLabelFormat('%d')
        self.axis_x.setLabelFormat('%.1f')
        self.axis_x.setTitleText('Intensity')
        self.chart.addAxis(self.axis_x, Qt.AlignBottom)

        self.axis_y = QtCharts.QValueAxis()
        # self.axis_y.setTickCount(10)
        self.axis_y.setLabelFormat('%.2f')
        # self.axis_y.setTitleText('Magnitude')
        self.chart.addAxis(self.axis_y, Qt.AlignLeft)

        self.axis_x.setRange(0, self.data.points[-1].x)
        self.axis_y.setRange(0, 1)
        # Add an empty series, else |chart.mapToPosition| will no work
        self.series = self.add_series()

        self.chart_view = QtCharts.QChartView(self.chart)
        # self.chart_view.setRubberBand(QtCharts.QChartView.RectangleRubberBand)
        self.chart_view.setRenderHint(QPainter.Antialiasing)

        self.scene = self.chart_view.scene()

        self._interval_views = SortedList()
        self._point_views = []
        if self.data is not None:
            self._add_interval_views()
            self._add_point_views()

        self.data.point_added.connect(self._on_point_added)

        grid_layout = QGridLayout()
        grid_layout.setContentsMargins(0, 0, 0, 0)
        grid_layout.addWidget(self.chart_view)
        self.setLayout(grid_layout)
Beispiel #30
0
	def __init__(self, parent, header):
		super(HeaderWidget, self).__init__(parent)
		layout = QGridLayout()
		layout.setContentsMargins(0, 0, 0, 0)
		layout.setVerticalSpacing(1)
		row = 0
		col = 0
		for field in header.fields:
			name = field[0]
			value = field[1]
			fieldType = ""
			if len(field) > 2:
				fieldType = field[2]
			layout.addWidget(QLabel(name + ": "), row, col * 3)
			if isinstance(value, list):
				for i in range(0, len(value)):
					if fieldType == "ptr":
						label = ClickableAddressLabel(value[i])
					elif fieldType == "code":
						label = ClickableCodeLabel(value[i])
					else:
						label = QLabel(value[i])
						label.setFont(binaryninjaui.getMonospaceFont(self))
					layout.addWidget(label, row, col * 3 + 1)
					row += 1
			else:
				if fieldType == "ptr":
					label = ClickableAddressLabel(value)
				elif fieldType == "code":
					label = ClickableCodeLabel(value)
				else:
					label = QLabel(value)
					label.setFont(binaryninjaui.getMonospaceFont(self))
				layout.addWidget(label, row, col * 3 + 1)
				row += 1
			if (header.columns > 1) and (row >= header.rows_per_column) and ((col + 1) < header.columns):
				row = 0
				col += 1
		for col in range(1, header.columns):
			layout.setColumnMinimumWidth(col * 3 - 1, UIContext.getScaledWindowSize(20, 20).width())
		layout.setColumnStretch(header.columns * 3 - 1, 1)
		self.setLayout(layout)