Ejemplo n.º 1
0
    def preencher_tabela(self):

        self.tableWidget_items.setRowCount(len(self.pedido.itens))

        if len(self.pedido.itens) > 0:
            row = 0
            for item_pedido in self.pedido.itens:
                col = 0
                for coluna in self.colunas_item:
                    valor = item_pedido.to_item_dict()[coluna]

                    if col in (4, 5, 6):
                        item = QTableWidgetItem(self.formatar_numero(valor))
                        item.setTextAlignment(Qt.AlignRight)

                        if col == 4 and item_pedido.alerta != '':
                            item.setIcon(self.icone_alerta)
                            item.setToolTip(item_pedido.alerta)

                    else:
                        item = QTableWidgetItem(self.formatar_numero(valor))

                    self.tableWidget_items.setItem(row, col, item)
                    col = col + 1
                row = row + 1

        self.tableWidget_items.setColumnHidden(0, True)
        self.tableWidget_items.setColumnHidden(1, True)

        self.tableWidget_items.resizeColumnsToContents()

        self.limpar_item()
Ejemplo n.º 2
0
    def createRow(self, pos, key, val, pin):
        newKeyItem = QTableWidgetItem()
        newKeyItem.setText(key)
        newValItem = QTableWidgetItem()
        newValItem.setText(val)

        color = PySide2.QtGui.QColor(200, 220, 200)
        if bool(pin):
            # newKeyItem.setIcon(QIcon.fromTheme('emblem-important'));
            newKeyItem.setIcon(IconFactory.getIcon('push_pin'))
            newKeyItem.setBackground(color)
            newValItem.setBackground(color)
        self.insertRow(pos)
        self.setItem(pos, 0, newKeyItem)
        self.setItem(pos, 1, newValItem)
Ejemplo n.º 3
0
    def setAsCurrentDatabase(self):
        """
        设置为当前数据库
        """
        if len(self.tables) == 0:
            self.refreshTables()

        self.applicationWindow.showDatabaseTab()
        mainWindow = self.applicationWindow.mainWindow
        databaseTab = mainWindow.databaseTab
        twMachineTabs = mainWindow.twMachineTabs
        twMachineTabs.setTabText(twMachineTabs.indexOf(databaseTab),
                                 "Database: %s" % self.name)
        twMachineTabs.setCurrentWidget(databaseTab)

        databaseTable = mainWindow.databaseInfoTable
        for i in reversed(range(databaseTable.rowCount())):
            databaseTable.removeRow(i)

        for table in self.tables:
            index = databaseTable.rowCount()
            databaseTable.insertRow(index)
            nameItem = QTableWidgetItem(table.name)
            nameItem.setIcon(QIcon('../resources/icons/table.png'))
            databaseTable.setItem(index, 0, nameItem)
            databaseTable.setItem(index, 1, QTableWidgetItem(str(table.rows)))
            databaseTable.setItem(
                index, 2, QTableWidgetItem(byteSizedStrings(table.size)))
            databaseTable.setItem(index, 3,
                                  QTableWidgetItem(table.getCreateTime()))
            databaseTable.setItem(index, 4,
                                  QTableWidgetItem(table.getUpdatedTime()))
            databaseTable.setItem(index, 5, QTableWidgetItem(table.engine))
            databaseTable.setItem(index, 6, QTableWidgetItem(table.comment))
            databaseTable.setItem(index, 7, QTableWidgetItem('table'))

        self.applicationWindow.tableTab.populateDefaultCollationField(
            self.server)
Ejemplo n.º 4
0
class Device(Thread):
    SerialNo = ""
    HelperNode = None
    DataPerso = None
    StateData = True
    StateProc = 0  # O= Non commencé, 1 = en cours, 2 = Fini
    ValeurScriptExecution = 0

    ItemId = QTableWidgetItem()
    ItemData = QTableWidgetItem()
    ItemProcess = QTableWidgetItem()

    #Manager = None
    VBoxLayout = None
    #ResultFunction = {}
    ResultFunctionItem = []

    def __init__(self, serialNo, PathProject):
        Thread.__init__(self)
        self.SerialNo = serialNo

        self.ItemId = QTableWidgetItem(str(self.SerialNo))
        self.ItemId.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
        self.ItemData = QTableWidgetItem("")
        self.ItemData.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
        self.ItemProcess = QTableWidgetItem("")
        self.ItemProcess.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
        self.UpdateItem()

        #self.Manager = ManagerNode
        self.VBoxLayout = QVBoxLayout()
        #self.VBoxLayout.setSizeConstraint(QLayout.SetFixedSize)
        self.VBoxLayout.addWidget(
            QLabel("Initialisation log de " + self.SerialNo))

        self.HelperNode = DeviceHelper(serialNo, PathProject, self)
        self.VerifyData()
        i = 1
        while i <= len(self.HelperNode.FunctionCallDict):
            self.ResultFunctionItem.append(
                QListWidgetItem(self.HelperNode.FunctionCallDict[i]))
            i = i + 1

    def UpdateItem(self):
        if not self.StateData:
            self.ItemData.setIcon(QIcon(".\\Asset\\red.svg"))
        else:
            self.ItemData.setIcon(QIcon(".\\Asset\\green.svg"))
        if self.StateProc == 2:
            self.ItemProcess.setIcon(QIcon(".\\Asset\\green.svg"))
        elif self.StateProc == 1:
            self.ItemProcess.setIcon(QIcon(".\\Asset\\orange.svg"))
        else:
            self.ItemProcess.setIcon(QIcon(".\\Asset\\red.svg"))

    def run(self):
        if self.StateProc == 0:
            self.StateProc = 1
            self.UpdateItem()
            i = 1
            while i <= len(self.HelperNode.FunctionCallDict):
                functioCallable = getattr(self.HelperNode,
                                          self.HelperNode.FunctionCallDict[i])
                result = functioCallable()
                if result == 1:
                    pal = QPalette()
                    pal.setColor(QPalette.Background, Qt.green)
                    self.ResultFunctionItem[
                        self.HelperNode.FunctionCallDict[i]].setPalette(pal)
                i = i + 1
            self.StateProc = 2
            self.UpdateItem()

    def GetState(self):
        return self.SerialNo, self.StateData, self.StateProc

    def GetItem(self):
        return self.ItemId, self.ItemData, self.ItemProcess

    def GetIMEI(self):
        return self.HelperNode.GetIMEI()

    def GetLayout(self):
        return self.VBoxLayout

    def GetListItemFunction(self):
        return self.ResultFunctionItem

    def VerifyData(self):
        self.StateData = True
        for item in self.HelperNode.ListVariable:
            if item not in self.HelperNode.Variable.keys():
                self.StateData = False
        self.UpdateItem()

    def SetData(self, Data):
        self.HelperNode.Variable = Data
        self.VerifyData()

    def AddLog(self, Text, Sens="Entrant"):
        tmpLabel = QLabel(Text)
        pal = QPalette()
        if Sens == "Entrant":  #Entrant : Device -> Computer
            pal.setColor(QPalette.Background, Qt.green)
        elif Sens == "Sortant":  #Sortant : Computer -> Device
            pal.setColor(QPalette.Background, Qt.red)
        tmpLabel.setAutoFillBackground(True)
        tmpLabel.setPalette(pal)
        self.VBoxLayout.addWidget(tmpLabel)