Example #1
0
    def add_element(self):
        des=self.description.text()
        price=self.price.text()
        self.table.insertRow(self.items)
		
        description_item = QTableWidgetItem(des)
        price_item = QTableWidgetItem("{:.2f}".format(float(price)))
        price_item.setTextAlignment(Qt.AlignRight)

        self.table.setItem(self.items, 0, description_item)
        self.table.setItem(self.items, 1, price_item)

        self.description.setText("")
        self.price.setText("")
        self.items+=1
Example #2
0
    def add_marker(self,
                   onset: str,
                   marker: str,
                   timestamp: Optional[bool] = True) -> None:
        """Write the marker in the GUI."""
        row = self.parent_frame.tableWidget_markers.rowCount()
        self.parent_frame.tableWidget_markers.insertRow(row)

        if timestamp:
            item = QTableWidgetItem(onset.strftime("%x %X"))
        else:
            item = QTableWidgetItem(onset)
        self.parent_frame.tableWidget_markers.setItem(row, 0, item)
        item = QTableWidgetItem(f"{marker}")
        self.parent_frame.tableWidget_markers.setItem(row, 1, item)
Example #3
0
def _makewidget(parent, val, center=False):
    """ Small helper function that builds a TableWidgetItem and sets up the font the way we want"""
    out = QTableWidgetItem(str(val))
    out.setFlags(Qt.ItemIsEnabled)
    out.setFont(getMonospaceFont(parent))
    if center:
        out.setTextAlignment(Qt.AlignCenter)
    return out
Example #4
0
 def update_table(self, item):
     table = Categories().tables
     stylesheet = "::section{Background-color:rgb(176,224,230);border-radius:2px;}"
     self.setColumnCount(len(table[item][0]))
     self.setRowCount(len(table[item]) - 1)
     for i in range(len(table[item])):
         for j in range(len(table[item][i])):
             if i == 0:
                 self.setHorizontalHeaderItem(
                     j, QTableWidgetItem(table[item][i][j]))
                 continue
             self.setItem(i - 1, j, QTableWidgetItem(table[item][i][j]))
     self.horizontalHeader().setStyleSheet(stylesheet)
     self.resizeColumnsToContents()
     self.horizontalHeader().setMaximumHeight(200)
 def addRow_with_items(self):
     item = QTableWidgetItem()
     item.setText('')
     self.setRowCount(self.rowCount() + 1)
     self.setItem(self.rowCount() - 1, 0, item)    # Note: new rowcount here
     label = QTableWidgetItem()
     label.setText('')
     self.setItem(self.rowCount() - 1, 1, label)
Example #6
0
    def update_list(self):
        self.table_widget.clear()
        self.table_widget.setHorizontalHeaderLabels(
            ["Name", "State", "Players", "Password?", "Creator"])

        name_filter = self.filter_name_edit.text().strip()

        displayed_has_password = set()
        if self.has_password_yes_check.isChecked():
            displayed_has_password.add(True)
        if self.has_password_no_check.isChecked():
            displayed_has_password.add(False)

        displayed_states = set()
        for (check, state) in ((self.state_setup_check,
                                GameSessionState.SETUP),
                               (self.state_inprogress_check,
                                GameSessionState.IN_PROGRESS),
                               (self.state_finished_check,
                                GameSessionState.FINISHED)):
            if check.isChecked():
                displayed_states.add(state)

        visible_sessions = [
            session for session in self.sessions
            if (session.has_password in displayed_has_password and session.
                state in displayed_states and name_filter in session.name)
        ]
        self.visible_sessions = visible_sessions

        self.table_widget.setRowCount(len(visible_sessions))
        for i, session in enumerate(visible_sessions):
            name = QTableWidgetItem(session.name)
            state = QTableWidgetItem(session.state.user_friendly_name)
            players_item = QTableWidgetItem(str(session.num_players))
            has_password = QTableWidgetItem(
                "Yes" if session.has_password else "No")
            creator = QTableWidgetItem(session.creator)

            self.table_widget.setItem(i, 0, name)
            self.table_widget.setItem(i, 1, state)
            self.table_widget.setItem(i, 2, players_item)
            self.table_widget.setItem(i, 3, has_password)
            self.table_widget.setItem(i, 4, creator)

        self.status_label.setText(
            f"{len(self.sessions)} sessions total, {len(visible_sessions)} displayed."
        )
    def onCollectionsComboBoxIndexChanged(self):
        currentCollection = self.collectionsComboBox.currentText()
        keys = self.dbManager.findAllKeysInCollection(currentCollection)
        self.collectionTableWidget.clear()
        self.collectionHeaderKeyInfos.clear()

        self.collectionTableWidget.setColumnCount(3)
        self.collectionTableWidget.setHorizontalHeaderItem(
            0, QTableWidgetItem("Key"))
        self.collectionTableWidget.setHorizontalHeaderItem(
            1, QTableWidgetItem("Shown"))
        self.collectionTableWidget.setHorizontalHeaderItem(
            2, QTableWidgetItem("Display Name"))
        self.collectionTableWidget.setRowCount(len(keys))

        headerInfos = self.dbManager.extractCollectionHeaderInfo(
            [currentCollection])
        headerKeyToInfo = {i.key: i for i in headerInfos}
        self.dbManager.collectionsMD.up

        rowIdx = 0
        for key in keys:
            checkbox = QtWidgets.QCheckBox(self.widget)
            checkbox.setText("")

            headerInfo = headerKeyToInfo.get(key)
            if not headerInfo:
                headerInfo = CollectionHeaderKeyInfo(key, key, True)

            checkbox.setChecked(headerInfo.displayed)

            checkbox.stateChanged.connect(
                lambda: self.updateHeader(currentCollection))

            self.collectionTableWidget.setItem(rowIdx, 0,
                                               QTableWidgetItem(key))
            self.collectionTableWidget.setCellWidget(rowIdx, 1, checkbox)
            edit = QLineEdit()
            edit.setText(headerInfo.displayName)
            edit.textChanged.connect(
                lambda txt: self.updateHeader(currentCollection))
            self.collectionTableWidget.setCellWidget(rowIdx, 2, edit)

            headerInfo.displayCheckbox = checkbox
            headerInfo.displayNameEdit = edit
            self.collectionHeaderKeyInfos.append(headerInfo)

            rowIdx += 1
def test_main_weights(qtbot):
    MainWindow = QMainWindow()
    ui = main.Ui_MainWindow()
    qtbot.addWidget(MainWindow)
    ui.setupUi(MainWindow)
    MainWindow.show()

    # Setup
    qtbot.keyClicks(ui.lineEdit, 'apple')
    qtbot.mouseClick(ui.pushButton, Qt.LeftButton)
    qtbot.keyClicks(ui.lineEdit, 'orange')
    qtbot.keyClick(ui.lineEdit, Qt.Key_Enter)

    qtbot.mouseClick(ui.combo_box, Qt.LeftButton)
    qtbot.keyClick(ui.combo_box, Qt.Key_Down)
    qtbot.keyClick(ui.combo_box, Qt.Key_Enter)

    qtbot.keyClicks(ui.lineEdit, 'taste')
    qtbot.mouseClick(ui.pushButton, Qt.LeftButton)

    qtbot.keyClicks(ui.lineEdit, 'color')
    qtbot.keyClick(ui.lineEdit, Qt.Key_Enter)

    # Neither clicks or tab key works
    ui.matrix_widget.setItem(0, 0, QTableWidgetItem('4'))
    assert ui.matrix.df.loc['Weight', 'taste'] == 4
    assert ui.matrix_widget.item(0, 2).text() == '40.0'
    assert ui.matrix_widget.item(1, 2).text() == '0.0%'
    assert ui.matrix_widget.item(2, 2).text() == '0.0%'
    def address_search(self):
        # Store input from form as string variables
        street_number_input = str(self.street_number.text())
        street_name_input = str(self.street_name.text())

        # Add column labels to result_table
        col_labels = ['BP Number', 'BP Name', 'City', 'State']
        self.result_table.setHorizontalHeaderLabels(col_labels)

        # Connect to SAP and run query w number and name input
        sap_cnxn = pyodbc.connect("Driver={SQL Server Native Client 11.0};"
                                  "Server=CASTLE2;"
                                  "Database=PQSYS_Prod;"
                                  "Trusted_Connection=yes;")
        cursor = sap_cnxn.cursor()
        query = "SELECT DISTINCT BpNumber, BpName, City, State FROM dbo.k_ContactSummary WHERE Street LIKE '" + street_number_input + "%' AND Street LIKE '%" + street_name_input + "%';"

        # Set row count to zero
        self.result_table.setRowCount(0)
        self.result_table.setColumnCount(4)

        # Add data from to table?
        for row_number, row_data in enumerate(cursor.execute(query)):
            self.result_table.insertRow(row_number)
            for column_number, data in enumerate(row_data):
                self.result_table.setItem(row_number, column_number,
                                          QTableWidgetItem(str(data)))

        self.result_table.resizeColumnsToContents()
Example #10
0
 def gen_items(self):
     values = []
     flag = True
     for line_edit in self.findChildren(QLineEdit, ''):
         value = line_edit.text()
         if value == '':
             msg = QMessageBox()
             msg.setText('缺少必要信息!')
             msg.setWindowIcon(self.app_icon)
             msg.setWindowTitle('警告')
             msg.exec_()
             line_edit.setFocus()
             flag = False
             break
         values.append(value)
     if flag:
         info = dict(zip(FIELDS, values))
         items = create_items(info)
         print(items)
         self.tbl.setRowCount(len(items))
         row = 0
         for item in items:
             for col in range(len(item)):
                 newItem = QTableWidgetItem(str(item[col]))
                 self.tbl.setItem(row, col, newItem)
             row += 1
Example #11
0
 def set_headers(self):
     for x in range(len(self.headers)):
         try:
             self.ui.tableWidget.setHorizontalHeaderItem(
                 x, QTableWidgetItem(self.headers[x]))
         except IndexError:  # not given all of the headers, just se the defaults for the others, which are from 1-length
             continue
Example #12
0
 def set_wedges(self):
     if self.ui.omega_wedges.rowCount() == 0:
         for i, wedge in enumerate(self.state['wedges']):
             self.ui.omega_wedges.insertRow(i)
             for j, value in enumerate(wedge):
                 self.ui.omega_wedges.setItem(i, j,
                                              QTableWidgetItem(str(value)))
Example #13
0
 def __init__(self):
     super().__init__(10, 10)
     for r in range(0, 10):
         for c in range(0, 10):
             item = QTableWidgetItem("")
             self.setItem(r, c, item)
     self.empty()
Example #14
0
    def _remove_bank_item(self):
        """ Removes an item from one of the bank tables.
        Currently triggered via a button press.
        """

        # Figure out which table the item is located in.
        # Known bug, this will always delete the first entry of an item
        # if multiple exist. Correcting this breaks the tables on macOS,
        # so best just to leave it alone for now.
        for i in range(32):
            item_left = self.ui.table_bank_left.cellWidget(i, 1)
            item_right = self.ui.table_bank_right.cellWidget(i, 1)
            if item_left is not None and \
                    item_left.objectName() == self.sender().objectName():
                curr_table = self.ui.table_bank_left
                break
            elif item_right is not None and \
                    item_right.objectName() == self.sender().objectName():
                curr_table = self.ui.table_bank_right
                break
        # Clear the item and determine if buttons need to be disabled.
        curr_table.setItem(i, 0, QTableWidgetItem(None))
        curr_table.setCellWidget(i, 1, None)
        curr_table.clearSelection()

        # Reload the tables.
        item = self._has_item()
        self.ui.btn_export_bank.setEnabled(item)
        self.ui.btn_save_bank.setEnabled(item)
        self.ui.btn_clear_bank.setEnabled(item)
        self._get_bank_data()
Example #15
0
    def Bt(self):
        self.ui.tb.clearContents()
        m = self.ui.monBox.currentText()
        d = self.ui.dayBox.currentText()
        url = "https://api.jisuapi.com/todayhistory/query?appkey=79e0e0bd1ffe97d0&month=" + m + "&day=" + d
        r = requests.get(url)
        self.data = r.json()["result"]
        self.ui.tb.setRowCount(len(self.data))

        for i in range(len(self.data)):
            line1 = QTableWidgetItem(self.data[i]["year"] + "年" +
                                     self.data[i]["month"] + "月" +
                                     self.data[i]["day"] + "日")
            self.ui.tb.setItem(i, 0, line1)
            line2 = QTableWidgetItem(self.data[i]["title"])
            self.ui.tb.setItem(i, 1, line2)
    def set_data(self, data):
        """
        Wyświetla dane w tabeli i je formatuje.
        :param data: dict
        """
        self.tbl_result.clear()
        row_count = (len(data))
        column_count = (len(data[0]))
        role_id = {1: 'Użytkownik', 2: 'Pracownik', 3: 'Administrator'}

        self.tbl_result.setColumnCount(column_count)
        self.tbl_result.setRowCount(row_count)

        self.tbl_result.setHorizontalHeaderLabels((list(data[0].keys())))

        if list(data[0].keys())[0] == 'id':
            self.tbl_result.hideColumn(0)
        if 'roleId' in list(data[0].keys(
        )) and self.lbl_title.text() != self._txt_permission:
            self.tbl_result.hideColumn(4)
        else:
            self.tbl_result.showColumn(4)

        for row in range(row_count):
            for column in range(column_count):
                item = (list(data[row].values())[column])
                if column == 4 and self.lbl_title.text(
                ) == self._txt_permission:
                    item = role_id.get(item)
                self.tbl_result.setItem(row, column,
                                        QTableWidgetItem(str(item)))

        self.tbl_result.resizeColumnsToContents()
        self.tbl_result.resizeRowsToContents()
Example #17
0
    def llenadoTabla(self, tabla, lista):
        '''llenado de datos a la tabla'''

        # vaciar QTableWidget
        tabla.setRowCount(0)

        # crea numero de filas con respecto a la lista
        # de elementos
        tabla.setRowCount(len(lista))

        # RECORRER COLUMNAS Y LISTA DE ITEMS /*/*/*/*/*/*/*/*/*/*/*/*/*/
        for fila, listaItem in enumerate(lista):
            """
            fila = cantidad de listas de la lista
            listaItem = lista que contiene valores
            """

            # CREAR BOTONES /*/*/*/*/*/*/*/*/*/*/*/*/*/
            btn_uno = self.creabotones(estilo=(u"""
                          QPushButton{background-color: #52CF33; color: white}
                          QPushButton:hover{background-color: #32EF03}
                          QPushButton:pressed{background-color: #43A02C}"""),
                                       icono='icons/edit.png',
                                       titulo=u' Editar',
                                       tooltip='Editar')

            btn_dos = self.creabotones(estilo=(u"""
                          QPushButton{background-color: #DB224F; color: white}
                          QPushButton:hover{background-color: #F41E52}
                          QPushButton:pressed{background-color: #A91E40}"""),
                                       icono='icons/delete.png',
                                       titulo=u'Eliminar',
                                       tooltip='Eliminar')

            # AGRUPAR BOTONES /*/*/*/*/*/*/*/*/*/*/*/*/*/
            layout = QHBoxLayout()
            layout.setContentsMargins(0, 0, 0, 0)  # espaciado
            layout.setSpacing(0)  # espaciado
            layout.addWidget(btn_uno)  # agregar botones al layout
            layout.addWidget(btn_dos)
            widget = QWidget()
            widget.setLayout(layout)
            # widget de botones en la columna final
            tabla.setCellWidget(fila, tabla.columnCount() - 1, widget)

            # SINCRONIZAR ACCIONES /*/*/*/*/*/*/*/*/*/*/*/*/*/
            self.boton_uno_coneccion(btn_uno, fila, tabla, listaItem)
            self.boton_dos_connecion(btn_dos, fila, tabla, listaItem)

            # AGREGAR ITEMS /*/*/*/*/*/*/*/*/*/*/*/*/*/
            for columna, item in enumerate(listaItem):
                """
                cantidad de elmentos de la lista = columna
                valor de la lista = item
                """

                tabla.setItem(fila, columna,
                              QTableWidgetItem(str(item)))  # insertar items
                tabla.item(fila, columna).setTextAlignment(
                    Qt.AlignCenter | Qt.AlignVCenter)  # alinear items
    def _fill_off_geometry_pixel_mapping(self, shape: OFFGeometryNexus):
        """
        Fill in the pixel mapping information from an OFFGeometry component.
        :param shape: The shape data from the NeXus file.
        """
        # Retrieve the detector face information from the shape and use this to create the required number of pixel
        # mapping widgets
        n_faces, detector_faces = self._get_detector_face_information(shape)
        self.create_pixel_mapping_table(n_faces, "face")

        # Populate the pixel mapping widgets based on the contents of the detector_faces array
        for detector_face in detector_faces:
            item = QTableWidgetItem()
            item.setData(Qt.DisplayRole, detector_face[1])
            self.pixel_mapping_table_widget.setItem(detector_face[0], 1,
                                                    QTableWidgetItem(item))
Example #19
0
 def on_move_history(self, item_index: int):
     assert self.display is not None
     history_item = self.display.log_display.items[item_index]
     self.display.update_board(history_item.game_state)
     choices = self.ui.choices
     choices.clear()
     choices.setColumnCount(len(history_item.choices))
     choices.setVerticalHeaderLabels(['count', 'probability', 'value'])
     choices.setHorizontalHeaderLabels(
         [choice[0] for choice in history_item.choices])
     for i, (choice, probability, count,
             value) in enumerate(history_item.choices):
         choices.setItem(0, i, QTableWidgetItem(f'{count}'))
         choices.setItem(1, i, QTableWidgetItem(f'{probability}'))
         choices.setItem(2, i, QTableWidgetItem(f'{value}'))
     choices.resizeColumnsToContents()
Example #20
0
    def __init__(self, parent,  db, tablename, default_id = None, ):
        super(DBTableWidget,self).__init__(parent)
        sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        self.setSizePolicy(sizePolicy)
        self.current_row = None
        self.selected_id = None
        self.db = db
        self.setFixedWidth(parent.width())
        self.table = tablename
        self.dataquery = f"select  * from {self.table}"
        self.clear()
        self.current_id = None

        records = self.db.execute(self.dataquery)
        self.setRowCount(len(records))
        self.setColumnCount(len(self.db.tables[self.table].columns.keys()))

        self.setHorizontalHeaderLabels( self.db.tables[self.table].columns.keys())
        i=0
        for record in records:
            j=0
            for k in record:
                self.setItem(i, j,QTableWidgetItem( str(k)))                              
                j+=1
            i+=1
        self.cellClicked.connect(self.check_row)
        self.selected_id = int(self.itemAt(0,0).text())
        self.current_row = 0
Example #21
0
    def slot_set_item(self, item: QtWidgets.QTableWidgetItem):

        row = item.row()
        content = self.ui.tableWidget.item(row, 0).text() + " (" + self.ui.tableWidget.item(row, 1).text() + ", " + \
                  self.ui.tableWidget.item(row, 2).text() + ")"
        self.rowCurrent = row
        self.ui.lineEdit.setText(" " + str(row) + " - [ " + content + "]")
Example #22
0
 def update_percentage_display(self):
     it = zip(self.matrix.df.loc[:, 'Percentage'][1:],
              range(1, self.matrix_widget.rowCount()))
     for value, row in it:
         item = QTableWidgetItem(str(round(value, 2)) + '%')
         if (last_col := self.matrix_widget.columnCount()):
             self.set_item_uneditable(item, row, last_col - 1)
Example #23
0
    def show_current_page(self):
        try:
            global g_current_data
            self.current_page_inticator()
            self.last_page_indicator()

            if len(g_current_data) != 0:
                for row_number, row_value in enumerate(g_current_data):
                    for item_number, item_value in enumerate(row_value):
                        self.table_csv.setItem(
                            row_number, item_number, QTableWidgetItem(
                                list(row_value.values())[item_number])
                        )
                        roww = list(row_value.values())
                        if roww[4].isspace() or roww[4] == "" or \
                                roww[12] != str(0):
                            self.paint(row_number, item_number)

                self.table_csv.setHorizontalHeaderLabels(backend.headers)
                self.table_csv.horizontalHeaderItem(
                    item_number).setTextAlignment(QtCore.Qt.AlignHCenter)
                self.table_csv.resizeColumnsToContents()
            else:
                QMessageBox.about(
                    self, "Предупреждение", "Файл пуст")
        except Lil_error as e:
            QMessageBox.about(
                self, "Предупреждение", str(e))
Example #24
0
    def afficheCentres(self, req):
        qt = self.ui
        qt.tableWidget.setRowCount(0)
        listCentres = reqPostgresql(req)
        nbCol = reqPostgresql("""SELECT count(*) FROM information_schema.columns WHERE table_name = 'centre';""")
        namesCol = reqPostgresql("""SELECT column_name FROM information_schema.columns WHERE table_schema = 'lafriterose' AND table_name = 'centre';""")
        namesCol.remove(('nom_image',))

        self.namesColList = []
        for name in namesCol:
            if re.match(r'id_*', name[0]):
                self.namesColList.append("")
            else:
                self.namesColList.append(name[0])

        cpt_centre = 0
        qt.tableWidget.setColumnCount(nbCol[0][0]-1)
        qt.tableWidget.verticalHeader().hide()
        qt.tableWidget.setHorizontalHeaderLabels(self.namesColList)

        for centre in listCentres:
            qt.tableWidget.setRowCount(cpt_centre + 1)
            cpt_elemCentre = 0
            for elemCentre in centre:
                qt.tableWidget.setItem(cpt_centre, cpt_elemCentre, QTableWidgetItem(str(elemCentre)))
                cpt_elemCentre += 1
            cpt_centre += 1
Example #25
0
    def populate_table(self, data):
        self.listBooksTable.setRowCount(len(data))

        for (index_row, row) in enumerate(data):
            for(index_cell, cell) in enumerate(row):
                self.listBooksTable.setItem(index_row, index_cell, QTableWidgetItem(str(cell)))
        self.records_qty()
Example #26
0
    def setup_table(self, status=True):
        self.ui.masks_table.setRowCount(0)
        for i, key in enumerate(self.masks.keys()):
            # Add label
            self.ui.masks_table.insertRow(i)
            self.ui.masks_table.setItem(i, 0, QTableWidgetItem(key))

            # Add checkbox to toggle visibility
            cb = QCheckBox()
            status = key in HexrdConfig().visible_masks
            cb.setChecked(status)
            cb.setStyleSheet('margin-left:50%; margin-right:50%;')
            cb.toggled.connect(self.toggle_visibility)
            self.ui.masks_table.setCellWidget(i, 1, cb)

            # Add push button to remove mask
            pb = QPushButton('Remove Mask')
            pb.clicked.connect(self.remove_mask)
            self.ui.masks_table.setCellWidget(i, 2, pb)

            # Connect manager to raw image mode tab settings
            # for threshold mask
            mtype, data = self.masks[key]
            if mtype == 'threshold':
                self.setup_threshold_connections(cb, pb)
Example #27
0
    def load(self):
        filename, basename, reference = load_image(self)
        if filename is None:
            return
        if reference.shape != self.evidence.shape:
            QMessageBox.critical(
                self, self.tr('Error'),
                self.tr('Evidence and reference must have the same size!'))
            return
        self.reference = reference
        self.reference_viewer.set_title(
            self.tr('Reference: {}'.format(basename)))
        self.difference = norm_mat(cv.absdiff(self.evidence, self.reference))

        self.comp_label.setEnabled(True)
        self.normal_radio.setEnabled(True)
        self.difference_radio.setEnabled(True)
        self.ssim_radio.setEnabled(False)
        self.butter_radio.setEnabled(False)
        self.gray_check.setEnabled(True)
        self.equalize_check.setEnabled(True)
        self.metric_button.setEnabled(True)
        for i in range(self.table_widget.rowCount()):
            self.table_widget.setItem(i, 1, QTableWidgetItem())
        self.normal_radio.setChecked(True)
        self.table_widget.setEnabled(False)
        self.change()
    def updateSaisieEleve(self):
        cpt = 0
        self.ui.tWTableNotation.clear()
        # self.ui.tWTableNotation.setColumnCount(2)
        # ça permettait de définir le nombre de colonne de la tableWidget si non défini dans le QtDesigner
        academie = self.ui.cBAcademie.currentIndex()
        etabliss = self.ui.cBEtablissement.currentIndex()
        cla = self.ui.cBClasseGPNote.currentIndex()
        dicoClasse = self.mesDatas["academies"][academie]["etablissements"][
            etabliss]["classes"][cla]
        for eleve in dicoClasse["eleves"]:
            for matiere in eleve["matieres"]:
                mat = self.ui.cBMatiereGBNote.currentText()
                if matiere["nom"] == mat:
                    nomE = eleve["nom"]
                    self.ui.tWTableNotation.setRowCount(cpt + 1)
                    itemE = QTableWidgetItem(nomE)
                    self.ui.tWTableNotation.setItem(cpt, 0, itemE)
                    # utiliser le QDoubleSpin permet de rentrer une note en transformant direct en float
                    spinB = QDoubleSpinBox()
                    spinB.setProperty("nom", nomE)
                    self.ui.tWTableNotation.setCellWidget(cpt, 1, spinB)
                    cpt += 1

        self.ui.tWTableNotation.setHorizontalHeaderLabels(['Nom', 'Note'])
Example #29
0
 def update_existing_stream_info(self, field):
     """
     Fill in stream fields and properties into the new UI field.
     :param field: The stream group
     """
     if isinstance(field, Group):
         field = field.children[0]
     if hasattr(field, "parent_node") and isinstance(
             field.parent_node, Group):
         self.schema_validator.set_group(field.parent_node)
     else:
         self.schema_validator.set_group(None)
     schema = field.writer_module
     self.schema_combo.setCurrentText(schema)
     self.schema_validator.validate(schema, 0)
     self.topic_line_edit.setText(field.topic)
     self.topic_validator.validate(field.topic, 0)
     self.source_line_edit.setText(field.source)
     self.source_validator.validate(field.source, 0)
     if schema == WriterModules.F142.value:
         self.fill_in_existing_f142_fields(field)
     elif schema == WriterModules.EV42.value:
         self.fill_in_existing_ev42_fields(field)
     elif schema == WriterModules.ADAR.value:
         for i, val in enumerate(field.array_size):
             self.array_size_table.setItem(0, i, QTableWidgetItem(str(val)))
Example #30
0
 def load_right_table(self):
     """
     Загружает имеющиеся предметы на складе в правую таблицу.
     """
     for item in self.right_storage:
         row_pos = self.service_ui.right_table.rowCount()
         self.service_ui.right_table.insertRow(row_pos)
         self.service_ui.right_table.setItem(
             row_pos, 0, QTableWidgetItem(item.name))
         self.service_ui.right_table.setItem(
             row_pos, 1, QTableWidgetItem(str(item.nominal)))
         self.service_ui.right_table.setItem(
             row_pos, 2, QTableWidgetItem(str(item.quantity)))
         self.service_ui.right_table.setItem(
             row_pos, 3, QTableWidgetItem(str(item.price)))
     self.service_ui.right_table.resizeColumnToContents(0)
    def __init__(self, messages, hiddenLifelines, parent = None):
        super(HiddenMessageDialog, self).__init__(parent)

        self.lifelineList = hiddenLifelines
        self.msgList = messages
        layout = QVBoxLayout(self)

        listTitle = QLabel('Hidden Messages')
        layout.addWidget(listTitle)

        self.listHiddenMessages = QTableWidget(len(self.msgList),4)
        self.listHiddenMessages.setHorizontalHeaderLabels(['Index','Name','Departure','Destination'])
        self.listHiddenMessages.setFixedWidth(400)
        #self.listHiddenMessages.setSelectionMode(QtGui.QAbstractItemView.MultiSelection)
        self.listHiddenMessages.setSelectionBehavior(QAbstractItemView.SelectRows)

        for idx, msg in enumerate(self.msgList):
            self.listHiddenMessages.setItem(idx,0,QTableWidgetItem("%d" % msg['messageindex']))
            self.listHiddenMessages.setItem(idx,1,QTableWidgetItem(msg['message']))
            item = QTableWidgetItem(msg['departure']['class'])
            item.setTextAlignment(QtCore.Qt.AlignmentFlag.AlignRight)
            if msg['departure']['class'] in self.lifelineList:
                item.setForeground(QColor(200,200,200)) 
            self.listHiddenMessages.setItem(idx,2,item)

            item = QTableWidgetItem(msg['dest'])
            item.setTextAlignment(QtCore.Qt.AlignmentFlag.AlignRight)
            if msg['dest'] in self.lifelineList:
                item.setForeground(QColor(200,200,200)) 
            self.listHiddenMessages.setItem(idx,3,item)

        layout.addWidget(self.listHiddenMessages)

        buttons = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel, QtCore.Qt.Horizontal, self)
        buttons.button(QDialogButtonBox.Ok).setText('Show')
        buttons.accepted.connect(self.accept)
        buttons.rejected.connect(self.reject)
        layout.addWidget(buttons)