Esempio n. 1
0
    def typeListChanged(self):
        for i in reversed(range(self.settingsWidgetLayout.count())):
            self.settingsWidgetLayout.itemAt(i).widget().deleteLater()

        height = QLineEdit().sizeHint().height()
        doubleValidator = QRegExpValidator(
            QRegExp("[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?"), self)

        if self.typeList.currentText() == "PushButton":
            self.valueText = QLineEdit(self.valueOn)
            self.settingsWidgetLayout.addRow(QLabel("Value"), self.valueText)
            self.valueText.setValidator(doubleValidator)
            self.valueText.mousePressEvent = lambda event: self.valueText.selectAll(
            )
            self.shortcutField = ShortcutCreator()
            self.shortcutField.setText(self.shortcut)
            self.settingsWidgetLayout.addRow(QLabel("Shortcut:"),
                                             self.shortcutField)
            self.valueResetText = QLineEdit(self.valueReset)
            self.settingsWidgetLayout.addRow(QLabel("Reset Value"),
                                             self.valueResetText)
            dummy = QLabel("")
            dummy.setFixedHeight(height)
            self.settingsWidgetLayout.addRow(None, dummy)
            dummy2 = QLabel("")
            dummy2.setFixedHeight(height)
            self.settingsWidgetLayout.addRow(None, dummy2)
        elif self.typeList.currentText() == "Switch":
            self.valueOnText = QLineEdit(self.valueOn)
            self.settingsWidgetLayout.addRow(QLabel("Value On"),
                                             self.valueOnText)
            self.valueOnText.setValidator(doubleValidator)
            self.valueOnText.mousePressEvent = lambda event: self.valueOnText.selectAll(
            )
            self.valueOffText = QLineEdit(self.valueOff)
            self.settingsWidgetLayout.addRow(QLabel("Value Off"),
                                             self.valueOffText)
            self.valueOffText.mousePressEvent = lambda event: self.valueOffText.selectAll(
            )
            self.valueOffText.setValidator(doubleValidator)
            self.shortcutField = ShortcutCreator()
            self.shortcutField.setText(self.shortcut)
            self.settingsWidgetLayout.addRow(QLabel("Shortcut:"),
                                             self.shortcutField)
            dummy = QLabel("")
            dummy.setFixedHeight(height)
            self.settingsWidgetLayout.addRow(None, dummy)
            dummy2 = QLabel("")
            dummy2.setFixedHeight(height)
            self.settingsWidgetLayout.addRow(None, dummy2)
        elif self.typeList.currentText() == "Slider":
            self.maxSliderText = QLineEdit(str(self.maxSlider))
            self.settingsWidgetLayout.addRow(QLabel("Max"), self.maxSliderText)
            self.maxSliderText.setValidator(doubleValidator)
            self.maxSliderText.mousePressEvent = lambda event: self.maxSliderText.selectAll(
            )
            self.minSliderText = QLineEdit(str(self.minSlider))
            self.settingsWidgetLayout.addRow(QLabel("Min"), self.minSliderText)
            self.minSliderText.setValidator(doubleValidator)
            self.minSliderText.mousePressEvent = lambda event: self.minSliderText.selectAll(
            )
            self.stepSliderText = QLineEdit(str(self.stepSlider))
            self.settingsWidgetLayout.addRow(QLabel("Step Size"),
                                             self.stepSliderText)
            self.stepSliderText.setValidator(doubleValidator)
            self.stepSliderText.mousePressEvent = lambda event: self.stepSliderText.selectAll(
            )
            self.shortcutFieldPlus = ShortcutCreator()
            self.shortcutFieldPlus.setText(self.shortcutPlus)
            self.settingsWidgetLayout.addRow(QLabel("Shortcut Plus:"),
                                             self.shortcutFieldPlus)
            self.shortcutFieldMinus = ShortcutCreator()
            self.shortcutFieldMinus.setText(self.shortcutMinus)
            self.settingsWidgetLayout.addRow(QLabel("Shortcut Minus:"),
                                             self.shortcutFieldMinus)
Esempio n. 2
0
    def __init__(self, parent=None):
        super(SQLHighlighter, self).__init__(parent)

        # liste des règles: [[regex, format], [regex, format], ...]
        self.regles = []

        #--------------------------------------------------------------------
        # coloration des mots clés SQL de sqlite3
        motcles_format = QTextCharFormat()
        motcles_format.setForeground(Qt.blue)  # mots clés en bleu
        motcles_format.setFontWeight(QFont.Bold)  # pour mise en gras
        # liste des mots à considérer
        motcles_motifs = [
            "ABORT", "ACTION", "ADD", "AFTER", "ALL", "ALTER", "ANALYZE",
            "AND", "AS", "ASC", "ATTACH", "AUTOINCREMENT", "BEFORE", "BEGIN",
            "BETWEEN", "BY", "CASCADE", "CASE", "CAST", "CHECK", "COLLATE",
            "COLUMN", "COMMIT", "CONFLICT", "CONSTRAINT", "CREATE", "CROSS",
            "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP", "DATABASE",
            "DEFAULT", "DEFERRABLE", "DEFERRED", "DELETE", "DESC", "DETACH",
            "DISTINCT", "DROP", "EACH", "ELSE", "END", "ESCAPE", "EXCEPT",
            "EXCLUSIVE", "EXISTS", "EXPLAIN", "FAIL", "FOR", "FOREIGN", "FROM",
            "FULL", "GLOB", "GROUP", "HAVING", "IF", "IGNORE", "IMMEDIATE",
            "IN", "INDEX", "INDEXED", "INITIALLY", "INNER", "INSERT",
            "INSTEAD", "INTERSECT", "INTO", "IS", "ISNULL", "JOIN", "KEY",
            "LEFT", "LIKE", "LIMIT", "MATCH", "NATURAL", "NO", "NOT",
            "NOTNULL", "NULL", "OF", "OFFSET", "ON", "OR", "ORDER", "OUTER",
            "PLAN", "PRAGMA", "PRIMARY", "QUERY", "RAISE", "RECURSIVE",
            "REFERENCES", "REGEXP", "REINDEX", "RELEASE", "RENAME", "REPLACE",
            "RESTRICT", "RIGHT", "ROLLBACK", "ROW", "SAVEPOINT", "SELECT",
            "SET", "TABLE", "TEMP", "TEMPORARY", "THEN", "TO", "TRANSACTION",
            "TRIGGER", "UNION", "UNIQUE", "UPDATE", "USING", "VACUUM",
            "VALUES", "VIEW", "VIRTUAL", "WHEN", "WHERE", "WITH", "WITHOUT"
        ]
        motcles_motifs += [
            "TEXT", "INTEGER", "REAL", "NUMERIC", "NONE", "BLOB"
        ]
        motcles_motifs += ["TRUE", "FALSE"]
        # enregistrement dans la liste des règles
        for motcles_motif in motcles_motifs:
            motcles_regex = QRegExp("\\b" + motcles_motif + "\\b",
                                    Qt.CaseInsensitive)
            self.regles.append([motcles_regex, motcles_format])

        #--------------------------------------------------------------------
        # nombre entier ou flottant
        nombre_format = QTextCharFormat()
        nombre_format.setForeground(Qt.darkGreen)
        nombre_motif = "\\b[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?\\b"
        nombre_regex = QRegExp(nombre_motif)
        nombre_regex.setMinimal(True)
        self.regles.append([nombre_regex, nombre_format])

        #--------------------------------------------------------------------
        # chaine de caractères simple quote: '...'
        chaine1_format = QTextCharFormat()
        chaine1_format.setForeground(Qt.green)  #red)
        chaine1_motif = "\'.*\'"
        chaine1_regex = QRegExp(chaine1_motif)
        chaine1_regex.setMinimal(True)
        self.regles.append([chaine1_regex, chaine1_format])

        #--------------------------------------------------------------------
        # chaine de caractères double quotes: "..."
        chaine2_format = QTextCharFormat()
        chaine2_format.setForeground(Qt.red)
        chaine2_motif = '\".*\"'
        chaine2_regex = QRegExp(chaine2_motif)
        chaine2_regex.setMinimal(True)
        self.regles.append([chaine2_regex, chaine2_format])

        #--------------------------------------------------------------------
        # delimiteur: parenthèses, crochets, accolades
        delimiteur_format = QTextCharFormat()
        delimiteur_format.setForeground(Qt.red)
        delimiteur_motif = "[\)\(]+|[\{\}]+|[][]+"
        delimiteur_regex = QRegExp(delimiteur_motif)
        self.regles.append([delimiteur_regex, delimiteur_format])

        #--------------------------------------------------------------------
        # commentaire sur une seule ligne et jusqu'à fin de ligne: --...\n
        comment_format = QTextCharFormat()
        comment_format.setForeground(Qt.gray)
        comment_motif = "--[^\n]*"
        comment_regex = QRegExp(comment_motif)
        self.regles.append([comment_regex, comment_format])

        #--------------------------------------------------------------------
        # commentaires multi-lignes: /*...*/
        self.commentml_format = QTextCharFormat()
        self.commentml_format.setForeground(Qt.gray)

        self.commentml_deb_regex = QRegExp("/\\*")
        self.commentml_fin_regex = QRegExp("\\*/")
Esempio n. 3
0
            def __init__(self, parent=None):
                super(Widget, self).__init__(parent)

                self.setFont(QFont('Arial', 10))
                self.setWindowTitle("Bestelregels inkooporders wijzigen")
                self.setWindowIcon(QIcon('./images/logos/logo.jpg'))
                self.setFont(QFont('Arial', 10))

                self.Inkoopordernummer = QLabel()
                q1Edit = QLineEdit(str(minkordnr))
                q1Edit.setDisabled(True)
                q1Edit.setFixedWidth(130)
                q1Edit.setFont(QFont("Arial", 10))
                q1Edit.textChanged.connect(self.q1Changed)

                self.BestelregelArtikel = QLabel()
                q2Edit = QLineEdit(str(row[2]))
                q2Edit.setDisabled(True)
                q2Edit.setFixedWidth(130)
                q2Edit.setFont(QFont("Arial", 10))
                q2Edit.textChanged.connect(self.q2Changed)

                self.BestelHoeveelheid = QLabel()
                q3Edit = QLineEdit(str(row[3]))
                q3Edit.setFixedWidth(130)
                q3Edit.setFont(QFont("Arial", 10))
                q3Edit.textChanged.connect(self.q3Changed)
                reg_ex = QRegExp("^[0-9.]{0,12}$")
                input_validator = QRegExpValidator(reg_ex, q3Edit)
                q3Edit.setValidator(input_validator)

                self.Inkoopeenheidsprijs = QLabel()
                q4Edit = QLineEdit(str(row[4]))
                q4Edit.setFixedWidth(130)
                q4Edit.setFont(QFont("Arial", 10))
                q4Edit.textChanged.connect(self.q4Changed)
                reg_ex = QRegExp("^[0-9.]{0,12}$")
                input_validator = QRegExpValidator(reg_ex, q4Edit)
                q4Edit.setValidator(input_validator)

                self.Levering_start = QLabel()
                q5Edit = QLineEdit(str(row[5]))
                q5Edit.setCursorPosition(0)
                q5Edit.setFixedWidth(130)
                q5Edit.setFont(QFont("Arial", 10))
                q5Edit.textChanged.connect(self.q5Changed)
                reg_ex = QRegExp(
                    '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
                )
                input_validator = QRegExpValidator(reg_ex, q5Edit)
                q5Edit.setValidator(input_validator)

                self.Levering_eind = QLabel()
                q13Edit = QLineEdit(str(row[6]))
                q13Edit.setCursorPosition(0)
                q13Edit.setFixedWidth(130)
                q13Edit.setFont(QFont("Arial", 10))
                q13Edit.textChanged.connect(self.q13Changed)
                reg_ex = QRegExp(
                    '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
                )
                input_validator = QRegExpValidator(reg_ex, q13Edit)
                q13Edit.setValidator(input_validator)

                self.Reclamatie = QLabel()
                q6Edit = QLineEdit(str(row[7]))
                q6Edit.setCursorPosition(0)
                q6Edit.setFixedWidth(130)
                q6Edit.setFont(QFont("Arial", 10))
                q6Edit.textChanged.connect(self.q6Changed)
                reg_ex = QRegExp(
                    '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
                )
                input_validator = QRegExpValidator(reg_ex, q6Edit)
                q6Edit.setValidator(input_validator)

                self.Aantal_reclamaties = QLabel()
                q7Edit = QLineEdit(str(row[8]))
                q7Edit.setFixedWidth(130)
                q7Edit.setFont(QFont("Arial", 10))
                q7Edit.textChanged.connect(self.q7Changed)
                reg_ex = QRegExp("^[0-9]{0,10}$")
                input_validator = QRegExpValidator(reg_ex, q7Edit)
                q7Edit.setValidator(input_validator)

                self.Ontvangstdatum = QLabel()
                q8Edit = QLineEdit(str(row[9]))
                q5Edit.setCursorPosition(0)
                q8Edit.setFixedWidth(130)
                q8Edit.setFont(QFont("Arial", 10))
                q8Edit.textChanged.connect(self.q8Changed)
                reg_ex = QRegExp(
                    '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
                )
                input_validator = QRegExpValidator(reg_ex, q8Edit)
                q8Edit.setValidator(input_validator)

                self.Ontvangen_Hoeveelheid = QLabel()
                q9Edit = QLineEdit(str(row[10]))
                q9Edit.setFixedWidth(130)
                q9Edit.setFont(QFont("Arial", 10))
                q9Edit.textChanged.connect(self.q9Changed)
                reg_ex = QRegExp("^[0-9.]{0,12}$")
                input_validator = QRegExpValidator(reg_ex, q9Edit)
                q9Edit.setValidator(input_validator)

                self.Acceptatiedatum = QLabel()
                q10Edit = QLineEdit(str(row[11]))
                q10Edit.setCursorPosition(0)
                q10Edit.setFixedWidth(130)
                q10Edit.setFont(QFont("Arial", 10))
                q10Edit.textChanged.connect(self.q10Changed)
                reg_ex = QRegExp(
                    '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
                )
                input_validator = QRegExpValidator(reg_ex, q10Edit)
                q10Edit.setValidator(input_validator)

                self.Hoeveelheid_acceptatie = QLabel()
                q11Edit = QLineEdit(str(row[12]))
                q11Edit.setFixedWidth(130)
                q11Edit.setFont(QFont("Arial", 10))
                q11Edit.textChanged.connect(self.q11Changed)
                reg_ex = QRegExp("^[0-9.]{0,12}$")
                input_validator = QRegExpValidator(reg_ex, q11Edit)
                q11Edit.setValidator(input_validator)

                self.Betaald = QLabel()
                q12Edit = QLineEdit(str(row[13]))
                q12Edit.setFixedWidth(130)
                q12Edit.setFont(QFont("Arial", 10))
                q12Edit.textChanged.connect(self.q12Changed)
                reg_ex = QRegExp("^[0-9.]{0,12}$")
                input_validator = QRegExpValidator(reg_ex, q12Edit)
                q12Edit.setValidator(input_validator)

                grid = QGridLayout()
                grid.setSpacing(20)

                lbl = QLabel()
                pixmap = QPixmap('./images/logos/verbinding.jpg')
                lbl.setPixmap(pixmap)
                grid.addWidget(lbl, 1, 0, 1, 2)

                logo = QLabel()
                pixmap = QPixmap('./images/logos/logo.jpg')
                logo.setPixmap(pixmap)
                grid.addWidget(logo, 1, 3, 1, 1, Qt.AlignRight)

                grid.addWidget(
                    QLabel(
                        '\u00A9 2017 all rights reserved [email protected]'),
                    15, 0, 1, 4, Qt.AlignCenter)

                self.setFont(QFont('Arial', 10))
                grid.addWidget(QLabel('Bestelling voor\nLeverancier: '+str(rp2[0])+\
                 ',\n'+rp2[1]+' '+rp2[2]+',\n'+mstraat+' '+str(rp2[4])+\
                 rp2[5]+',\n'+rp2[3]+' '+mplaats+'.\nOrderregel '+str(mregel)), 1, 1, 1, 3)

                lbl1 = QLabel('Ordernummer')
                lbl1.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl1, 5, 0)
                grid.addWidget(q1Edit, 5, 1)

                lbl2 = QLabel('Bestelregel Artikel')
                lbl2.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl2, 6, 0)
                grid.addWidget(q2Edit, 6, 1)

                lbl3 = QLabel('Bestelhoeveelheid')
                lbl3.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl3, 7, 0)
                grid.addWidget(q3Edit, 7, 1)

                lbl4 = QLabel('Inkoopeenheidsprijs')
                lbl4.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl4, 8, 0)
                grid.addWidget(q4Edit, 8, 1)

                lbl5 = QLabel('Levering start')
                lbl5.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl5, 9, 0)
                grid.addWidget(q5Edit, 9, 1)

                lbl13 = QLabel('Levering eind')
                lbl13.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl13, 9, 2)
                grid.addWidget(q13Edit, 9, 3)

                lbl6 = QLabel('Reclamatiedatum jjjj-mm-dd')
                lbl6.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl6, 10, 0)
                grid.addWidget(q6Edit, 10, 1)

                lbl7 = QLabel('Aantal_reclamaties')
                lbl7.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl7, 10, 2)
                grid.addWidget(q7Edit, 10, 3)

                lbl8 = QLabel('Ontvangstdatum jjjj-mm-d')
                lbl8.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl8, 11, 0)
                grid.addWidget(q8Edit, 11, 1)

                lbl9 = QLabel('Totaal ontvangen')
                lbl9.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl9, 11, 2)
                grid.addWidget(q9Edit, 11, 3)

                lbl10 = QLabel('Acceptatiedatum jjjj-mm-dd')
                lbl10.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl10, 12, 0)
                grid.addWidget(q10Edit, 12, 1)

                lbl11 = QLabel('Totaal geaccepteerd')
                lbl11.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl11, 12, 2)
                grid.addWidget(q11Edit, 12, 3)

                lbl12 = QLabel('Hoeveelheid betaald')
                lbl12.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
                grid.addWidget(lbl12, 13, 0)
                grid.addWidget(q12Edit, 13, 1)

                self.setLayout(grid)
                self.setGeometry(500, 150, 150, 150)

                applyBtn = QPushButton('Wijzigen')
                applyBtn.clicked.connect(self.accept)

                grid.addWidget(applyBtn, 14, 3, 1, 1, Qt.AlignRight)
                applyBtn.setFont(QFont("Arial", 10))
                applyBtn.setFixedWidth(100)
                applyBtn.setStyleSheet(
                    "color: black;  background-color: gainsboro")

                cancelBtn = QPushButton('Sluiten')
                cancelBtn.clicked.connect(lambda: closeWin(self, m_email))

                grid.addWidget(cancelBtn, 14, 2, 1, 1, Qt.AlignRight)
                cancelBtn.setFont(QFont("Arial", 10))
                cancelBtn.setFixedWidth(100)
                cancelBtn.setStyleSheet(
                    "color: black;  background-color: gainsboro")
Esempio n. 4
0
    def __init__(self,
                 new_project=True,
                 project_manager: ProjectManager = None,
                 parent=None):
        super().__init__(parent)
        if not new_project:
            assert project_manager is not None

        self.ui = Ui_ProjectDialog()
        self.ui.setupUi(self)
        self.setWindowFlags(Qt.Window)

        if new_project:
            self.participant_table_model = ParticipantTableModel([])
        else:
            self.participant_table_model = ParticipantTableModel(
                project_manager.participants)

            self.ui.spinBoxSampleRate.setValue(
                project_manager.device_conf["sample_rate"])
            self.ui.spinBoxFreq.setValue(
                project_manager.device_conf["frequency"])
            self.ui.spinBoxBandwidth.setValue(
                project_manager.device_conf["bandwidth"])
            self.ui.spinBoxGain.setValue(
                project_manager.device_conf.get("gain", config.DEFAULT_GAIN))
            self.ui.txtEdDescription.setPlainText(project_manager.description)
            self.ui.lineEdit_Path.setText(project_manager.project_path)
            self.ui.lineEditBroadcastAddress.setText(
                project_manager.broadcast_address_hex)

            self.ui.btnSelectPath.hide()
            self.ui.lineEdit_Path.setDisabled(True)
            self.setWindowTitle("Edit project settings")
            self.ui.lNewProject.setText("Edit project")

        self.ui.tblParticipants.setModel(self.participant_table_model)
        self.participant_table_model.update()

        self.ui.lineEditBroadcastAddress.setValidator(
            QRegExpValidator(QRegExp("([a-fA-F ]|[0-9]){,}")))

        self.sample_rate = self.ui.spinBoxSampleRate.value()
        self.freq = self.ui.spinBoxFreq.value()
        self.bandwidth = self.ui.spinBoxBandwidth.value()
        self.gain = self.ui.spinBoxGain.value()
        self.description = self.ui.txtEdDescription.toPlainText()
        self.broadcast_address_hex = self.ui.lineEditBroadcastAddress.text()

        self.path = self.ui.lineEdit_Path.text()
        self.new_project = new_project
        self.committed = False
        self.setModal(True)

        completer = QCompleter()
        completer.setModel(QDirModel(completer))
        self.ui.lineEdit_Path.setCompleter(completer)

        self.create_connects()
        # add two participants
        if self.participant_table_model.rowCount() == 0 and new_project:
            self.ui.btnAddParticipant.click()
            self.ui.btnAddParticipant.click()

        if new_project:
            self.ui.lineEdit_Path.setText(
                os.path.realpath(os.path.join(os.curdir, "new")))

        self.on_line_edit_path_text_edited()

        try:
            self.restoreGeometry(
                constants.SETTINGS.value("{}/geometry".format(
                    self.__class__.__name__)))
        except TypeError:
            pass
Esempio n. 5
0
        def __init__(self, parent=None):
            super(Widget, self).__init__(parent)
            self.setWindowTitle("Invoer werkorders")
            self.setWindowIcon(QIcon('./images/logos/logo.jpg'))

            self.setFont(QFont('Arial', 10))

            self.Omschrijving = QLabel()
            q1Edit = QLineEdit()
            q1Edit.setFont(QFont("Arial", 10))
            q1Edit.textChanged.connect(self.q1Changed)
            reg_ex = QRegExp("^.{0,49}$")
            input_validator = QRegExpValidator(reg_ex, q1Edit)
            q1Edit.setValidator(input_validator)

            self.StartWerk = QLabel()
            q2Edit = QLineEdit()
            q2Edit.setFixedWidth(110)
            q2Edit.setFont(QFont("Arial", 10))
            q2Edit.textChanged.connect(self.q2Changed)
            reg_ex = QRegExp(
                '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
            )
            input_validator = QRegExpValidator(reg_ex, q2Edit)
            q2Edit.setValidator(input_validator)

            self.Artikelnummer = QLabel()
            q3Edit = QLineEdit()
            q3Edit.setFixedWidth(110)
            q3Edit.setFont(QFont("Arial", 10))
            q3Edit.textChanged.connect(self.q3Changed)
            reg_ex = QRegExp("^[2]{1}[0-9]{8}$")
            input_validator = QRegExpValidator(reg_ex, q3Edit)
            q3Edit.setValidator(input_validator)

            self.Hoeveelheid = QLabel()
            q4Edit = QLineEdit()
            q4Edit.setFixedWidth(110)
            q4Edit.setFont(QFont("Arial", 10))
            q4Edit.textChanged.connect(self.q4Changed)
            reg_ex = QRegExp("^[0-9.]{0,20}$")
            input_validator = QRegExpValidator(reg_ex, q4Edit)
            q4Edit.setValidator(input_validator)

            grid = QGridLayout()
            grid.setSpacing(20)

            lbl1 = QLabel('Werkorder')
            lbl1.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
            grid.addWidget(lbl1, 1, 0)

            lbl2 = QLabel(str(bepaalWerknr()))
            grid.addWidget(lbl2, 1, 1)

            lbl3 = QLabel('Omschrijving')
            lbl3.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
            grid.addWidget(lbl3, 2, 0)
            grid.addWidget(q1Edit, 2, 1, 1, 3)

            lbl4 = QLabel('Start werk')
            lbl4.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
            grid.addWidget(lbl4, 3, 0)
            grid.addWidget(q2Edit, 3, 1)

            lbl5 = QLabel('Artikelnummer\n       Halffabrikaat   ')
            lbl5.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
            grid.addWidget(lbl5, 4, 0)
            grid.addWidget(q3Edit, 4, 1)

            lbl6 = QLabel('Hoeveelheid')
            lbl6.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
            grid.addWidget(lbl6, 5, 0)
            grid.addWidget(q4Edit, 5, 1)

            lbl = QLabel()
            pixmap = QPixmap('./images/logos/verbinding.jpg')
            lbl.setPixmap(pixmap)
            grid.addWidget(lbl, 0, 0, 1, 2)

            logo = QLabel()
            pixmap = QPixmap('./images/logos/logo.jpg')
            logo.setPixmap(pixmap)
            grid.addWidget(logo, 0, 2, 1, 1, Qt.AlignRight)

            grid.addWidget(
                QLabel('\u00A9 2017 all rights reserved [email protected]'),
                7, 0, 1, 3, Qt.AlignCenter)
            self.setLayout(grid)
            self.setGeometry(500, 300, 150, 150)

            applyBtn = QPushButton('Invoer')
            applyBtn.clicked.connect(self.accept)

            grid.addWidget(applyBtn, 6, 2, 1, 1, Qt.AlignRight)
            applyBtn.setFont(QFont("Arial", 10))
            applyBtn.setFixedWidth(100)
            applyBtn.setStyleSheet(
                "color: black;  background-color: gainsboro")

            cancelBtn = QPushButton('Sluiten')
            cancelBtn.clicked.connect(lambda: windowSluit(self, m_email))

            grid.addWidget(cancelBtn, 6, 1, 1, 1, Qt.AlignRight)
            cancelBtn.setFont(QFont("Arial", 10))
            cancelBtn.setFixedWidth(100)
            cancelBtn.setStyleSheet(
                "color: black;  background-color: gainsboro")
Esempio n. 6
0
        def __init__(self, parent=None):
            super(Widget, self).__init__(parent)
            self.setWindowTitle("Inkooporder Wijzigen.")
            self.setWindowIcon(QIcon('./images/logos/logo.jpg'))

            self.setFont(QFont('Arial', 10))

            self.Inkoopordernummer = QLabel()
            inkordEdit = QLineEdit(str(minkordnr))
            inkordEdit.setFixedWidth(110)
            inkordEdit.setDisabled(True)
            inkordEdit.setFont(QFont("Arial", 10))
            inkordEdit.textChanged.connect(self.inkordChanged)

            self.Besteldatum = QLabel()
            q3Edit = QLineEdit()
            datum = str(datetime.datetime.now())
            q3Edit.setText((datum[8:10] + '-' + datum[5:8] + datum[0:4]))
            q3Edit.setDisabled(True)
            q3Edit.setFixedWidth(110)
            q3Edit.setFont(QFont("Arial", 10))

            self.Goedgekeurd = QLabel()
            q4Edit = QLineEdit(rp1[3])
            q4Edit.setCursorPosition(0)
            q4Edit.setFixedWidth(110)
            q4Edit.setFont(QFont("Arial", 10))
            q4Edit.textChanged.connect(self.q4Changed)
            reg_ex = QRegExp(
                '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
            )
            input_validator = QRegExpValidator(reg_ex, q4Edit)
            q4Edit.setValidator(input_validator)

            self.Betaald = QLabel()
            q5Edit = QLineEdit(rp1[4])
            q5Edit.setCursorPosition(0)
            q5Edit.setFixedWidth(110)
            q5Edit.setFont(QFont("Arial", 10))
            q5Edit.textChanged.connect(self.q5Changed)
            reg_ex = QRegExp(
                '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
            )
            input_validator = QRegExpValidator(reg_ex, q5Edit)
            q5Edit.setValidator(input_validator)

            self.Afgemeld = QLabel()
            q6Edit = QLineEdit(rp1[5])
            q6Edit.setCursorPosition(0)
            q6Edit.setFixedWidth(110)
            q6Edit.setFont(QFont("Arial", 10))
            q6Edit.textChanged.connect(self.q6Changed)
            reg_ex = QRegExp(
                '^[2]{1}[0]{1}[0-9]{2}[-]{1}[0-1]{1}[0-9]{1}[-]{1}[0-3]{1}[0-9]{1}$'
            )
            input_validator = QRegExpValidator(reg_ex, q6Edit)
            q6Edit.setValidator(input_validator)

            grid = QGridLayout()
            grid.setSpacing(20)

            lbl = QLabel()
            pixmap = QPixmap('./images/logos/verbinding.jpg')
            lbl.setPixmap(pixmap)
            grid.addWidget(lbl, 1, 0)

            self.setFont(QFont('Arial', 10))
            grid.addWidget(QLabel('Bestelling voor\nLeverancier: '+str(rp2[0])+\
              ',\n'+rp2[1]+' '+rp2[2]+',\n'+mstraat+' '+str(rp2[4])+\
              rp2[5]+',\n'+rp2[3]+' '+mplaats+'.'), 1, 1, 1 , 2)

            logo = QLabel()
            pixmap = QPixmap('./images/logos/logo.jpg')
            logo.setPixmap(pixmap)
            grid.addWidget(logo, 5, 2, 1, 1, Qt.AlignCenter)

            grid.addWidget(QLabel('Inkoopordernummer'), 4, 0, 1, 1,
                           Qt.AlignRight)
            grid.addWidget(inkordEdit, 4, 1)

            grid.addWidget(QLabel('Besteldatum'), 5, 0, 1, 1, Qt.AlignRight)
            grid.addWidget(q3Edit, 5, 1)

            grid.addWidget(QLabel('Goedgekeurd jjjj-mm-dd'), 6, 0, 1, 1,
                           Qt.AlignRight)
            grid.addWidget(q4Edit, 6, 1)

            grid.addWidget(QLabel('Betaald jjjj-mm-dd'), 7, 0, 1, 1,
                           Qt.AlignRight)
            grid.addWidget(q5Edit, 7, 1)

            grid.addWidget(QLabel('Afgemeld jjjj-mm-dd'), 8, 0, 1, 1,
                           Qt.AlignRight)
            grid.addWidget(q6Edit, 8, 1)

            grid.addWidget(
                QLabel('\u00A9 2017 all rights reserved [email protected]'),
                9, 0, 1, 3, Qt.AlignCenter)

            applyBtn = QPushButton('Bestelregels')
            applyBtn.clicked.connect(self.accept)

            cancelBtn = QPushButton('Sluiten')
            cancelBtn.clicked.connect(lambda: wijzSluit(self, m_email))

            grid.addWidget(applyBtn, 8, 2, 1, 1, Qt.AlignRight)
            applyBtn.setFont(QFont("Arial", 10))
            applyBtn.setFixedWidth(120)
            applyBtn.setStyleSheet(
                "color: black;  background-color: gainsboro")

            grid.addWidget(cancelBtn, 7, 2, 1, 1, Qt.AlignRight)
            cancelBtn.setFont(QFont("Arial", 10))
            cancelBtn.setFixedWidth(120)
            cancelBtn.setStyleSheet(
                "color: black;  background-color: gainsboro")

            self.setLayout(grid)
            self.setGeometry(500, 200, 350, 300)
Esempio n. 7
0
    def initUI(self):
        # 控件+布局
        infoLabel = QLabel(self)
        infoLabel.setAlignment(Qt.AlignCenter)
        infoLabel.setFont(QFont("微软雅黑", 20))
        infoLabel.setText(self.tr("请输入注册信息"))
        infoLabel.resize(infoLabel.sizeHint())
        infoLabel.move(self.width() / 2 - infoLabel.width() / 2, 10)

        nameLabel = QLabel(self)
        nameLabel.setFont(QFont("微软雅黑", 18, 10))
        nameLabel.setText(self.tr("用户名"))
        nameLabel.setGeometry(QRect(100, 70, 91, 41))

        passwordLabel1 = QLabel(self)
        passwordLabel1.setFont(QFont("微软雅黑", 18, 10))
        passwordLabel1.setText(self.tr("密码"))
        passwordLabel1.setGeometry(QRect(120, 120, 91, 51))

        passwordLabel2 = QLabel(self)
        passwordLabel2.setFont(QFont("微软雅黑", 18, 10))
        passwordLabel2.setText(self.tr("再次输入密码"))
        passwordLabel2.setGeometry(QRect(25, 180, 161, 51))

        mailLabel = QLabel(self)
        mailLabel.setFont(QFont("微软雅黑", 18, 10))
        mailLabel.setText(self.tr("邮箱"))
        mailLabel.setGeometry(QRect(120, 240, 91, 51))

        self.nameLineEdit = QLineEdit(self)
        self.nameLineEdit.setValidator(QRegExpValidator(QRegExp("^[-_0-9a-zA-Z]{3,15}$"), self.nameLineEdit))  # 只能够输入普通字符
        self.nameLineEdit.setGeometry(QRect(200, 70, 261, 41))
        self.nameLineEdit.setFont(QFont("微软雅黑", 18, 50))
        self.nameLineEdit.setStyleSheet(
            "border:2px groove gray;border-radius:10px;padding:2px 4px")

        self.passwordLineEdit1 = QLineEdit(self)
        self.passwordLineEdit1.setEchoMode(QLineEdit.Password)
        self.passwordLineEdit1.setValidator(QRegExpValidator(QRegExp("^[_0-9a-zA-Z]{3,15}$"), self.passwordLineEdit1))
        self.passwordLineEdit1.setGeometry(QRect(200, 130, 261, 41))
        self.passwordLineEdit1.setFont(QFont("微软雅黑", 18, 50))
        self.passwordLineEdit1.setStyleSheet(
            "border:2px groove gray;border-radius:10px;padding:2px 4px")

        self.passwordLineEdit2 = QLineEdit(self)
        self.passwordLineEdit2.setEchoMode(QLineEdit.Password)
        self.passwordLineEdit2.setValidator(QRegExpValidator(QRegExp("^[_0-9a-zA-Z]{3,15}$"), self.passwordLineEdit2))
        self.passwordLineEdit2.setGeometry(QRect(200, 190, 261, 41))
        self.passwordLineEdit2.setFont(QFont("微软雅黑", 18, 50))
        self.passwordLineEdit2.setStyleSheet(
            "border:2px groove gray;border-radius:10px;padding:2px 4px")

        self.mailLineEdit = QLineEdit(self)
        self.mailLineEdit.setValidator(QRegExpValidator(QRegExp("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"), self.mailLineEdit))
        self.mailLineEdit.setGeometry(QRect(200, 250, 261, 41))
        self.mailLineEdit.setFont(QFont("微软雅黑", 18, 50))
        self.mailLineEdit.setStyleSheet(
            "border:2px groove gray;border-radius:10px;padding:2px 4px")

        registerButton = QPushButton(self)
        registerButton.setDefault(True)
        registerButton.setText(self.tr("注册"))
        registerButton.setGeometry(QRect(200, 320, 121, 41))
        registerButton.setFont(QFont("微软雅黑", 18, 50))
        registerButton.clicked.connect(self.registerButtonClicked)
        registerButton.setStyleSheet(
            "border:2px groove gray;border-radius:10px;padding:2px 4px")
Esempio n. 8
0
    def request_safe_t_init_settings(self, wizard, method, device):
        vbox = QVBoxLayout()
        next_enabled = True
        label = QLabel(_("Enter a label to name your device:"))
        name = QLineEdit()
        hl = QHBoxLayout()
        hl.addWidget(label)
        hl.addWidget(name)
        hl.addStretch(1)
        vbox.addLayout(hl)

        def clean_text(widget):
            text = widget.toPlainText().strip()
            return ' '.join(text.split())

        if method in [TIM_NEW, TIM_RECOVER]:
            gb = QGroupBox()
            hbox1 = QHBoxLayout()
            gb.setLayout(hbox1)
            vbox.addWidget(gb)
            gb.setTitle(_("Select your seed length:"))
            bg = QButtonGroup()
            for i, count in enumerate([12, 18, 24]):
                rb = QRadioButton(gb)
                rb.setText(_("{:d} words").format(count))
                bg.addButton(rb)
                bg.setId(rb, i)
                hbox1.addWidget(rb)
                rb.setChecked(True)
            cb_pin = QCheckBox(_('Enable PIN protection'))
            cb_pin.setChecked(True)
        else:
            text = QTextEdit()
            text.setMaximumHeight(60)
            if method == TIM_MNEMONIC:
                msg = _("Enter your BIP39 mnemonic:")
            else:
                msg = _("Enter the master private key beginning with xprv:")

                def set_enabled():
                    from electrum_mona.bip32 import is_xprv
                    wizard.next_button.setEnabled(is_xprv(clean_text(text)))

                text.textChanged.connect(set_enabled)
                next_enabled = False

            vbox.addWidget(QLabel(msg))
            vbox.addWidget(text)
            pin = QLineEdit()
            pin.setValidator(QRegExpValidator(QRegExp('[1-9]{0,9}')))
            pin.setMaximumWidth(100)
            hbox_pin = QHBoxLayout()
            hbox_pin.addWidget(QLabel(_("Enter your PIN (digits 1-9):")))
            hbox_pin.addWidget(pin)
            hbox_pin.addStretch(1)

        if method in [TIM_NEW, TIM_RECOVER]:
            vbox.addWidget(WWLabel(RECOMMEND_PIN))
            vbox.addWidget(cb_pin)
        else:
            vbox.addLayout(hbox_pin)

        passphrase_msg = WWLabel(PASSPHRASE_HELP_SHORT)
        passphrase_warning = WWLabel(PASSPHRASE_NOT_PIN)
        passphrase_warning.setStyleSheet("color: red")
        cb_phrase = QCheckBox(_('Enable passphrases'))
        cb_phrase.setChecked(False)
        vbox.addWidget(passphrase_msg)
        vbox.addWidget(passphrase_warning)
        vbox.addWidget(cb_phrase)

        wizard.exec_layout(vbox, next_enabled=next_enabled)

        if method in [TIM_NEW, TIM_RECOVER]:
            item = bg.checkedId()
            pin = cb_pin.isChecked()
        else:
            item = ' '.join(str(clean_text(text)).split())
            pin = str(pin.text())

        return (item, name.text(), pin, cb_phrase.isChecked())
Esempio n. 9
0
    def on_executeButton_clicked(self, startpos=0):
        """
        Private slot to execute the entered regexp on the test text.
        
        This slot will execute the entered regexp on the entered test
        data and will display the result in the table part of the dialog.
        
        @param startpos starting position for the regexp matching
        """
        regex = self.regexpLineEdit.text()
        text = self.textTextEdit.toPlainText()
        if regex and text:
            re = QRegExp(regex)
            if self.caseSensitiveCheckBox.isChecked():
                re.setCaseSensitivity(Qt.CaseSensitive)
            else:
                re.setCaseSensitivity(Qt.CaseInsensitive)
            re.setMinimal(self.minimalCheckBox.isChecked())
            syntax = self.syntaxCombo.itemData(self.syntaxCombo.currentIndex())
            wildcard = syntax in [QRegExp.Wildcard, QRegExp.WildcardUnix]
            re.setPatternSyntax(syntax)
            if not re.isValid():
                E5MessageBox.critical(
                    self, self.tr("Error"),
                    self.tr("""Invalid regular expression: {0}""").format(
                        re.errorString()))
                return
            offset = re.indexIn(text, startpos)
            captures = re.captureCount()
            row = 0
            OFFSET = 5

            self.resultTable.setColumnCount(0)
            self.resultTable.setColumnCount(3)
            self.resultTable.setRowCount(0)
            self.resultTable.setRowCount(OFFSET)
            self.resultTable.setItem(row, 0,
                                     QTableWidgetItem(self.tr("Regexp")))
            self.resultTable.setItem(row, 1, QTableWidgetItem(regex))

            if offset != -1:
                self.lastMatchEnd = offset + re.matchedLength()
                self.nextButton.setEnabled(True)
                row += 1
                self.resultTable.setItem(row, 0,
                                         QTableWidgetItem(self.tr("Offset")))
                self.resultTable.setItem(
                    row, 1, QTableWidgetItem("{0:d}".format(offset)))

                if not wildcard:
                    row += 1
                    self.resultTable.setItem(
                        row, 0, QTableWidgetItem(self.tr("Captures")))
                    self.resultTable.setItem(
                        row, 1, QTableWidgetItem("{0:d}".format(captures)))
                    row += 1
                    self.resultTable.setItem(row, 1,
                                             QTableWidgetItem(self.tr("Text")))
                    self.resultTable.setItem(
                        row, 2, QTableWidgetItem(self.tr("Characters")))

                row += 1
                self.resultTable.setItem(row, 0,
                                         QTableWidgetItem(self.tr("Match")))
                self.resultTable.setItem(row, 1, QTableWidgetItem(re.cap(0)))
                self.resultTable.setItem(
                    row, 2,
                    QTableWidgetItem("{0:d}".format(re.matchedLength())))

                if not wildcard:
                    for i in range(1, captures + 1):
                        if len(re.cap(i)) > 0:
                            row += 1
                            self.resultTable.insertRow(row)
                            self.resultTable.setItem(
                                row, 0,
                                QTableWidgetItem(
                                    self.tr("Capture #{0}").format(i)))
                            self.resultTable.setItem(
                                row, 1, QTableWidgetItem(re.cap(i)))
                            self.resultTable.setItem(
                                row, 2,
                                QTableWidgetItem("{0:d}".format(len(
                                    re.cap(i)))))
                else:
                    self.resultTable.setRowCount(3)

                # highlight the matched text
                tc = self.textTextEdit.textCursor()
                tc.setPosition(offset)
                tc.setPosition(self.lastMatchEnd, QTextCursor.KeepAnchor)
                self.textTextEdit.setTextCursor(tc)
            else:
                self.nextButton.setEnabled(False)
                self.resultTable.setRowCount(2)
                row += 1
                if startpos > 0:
                    self.resultTable.setItem(
                        row, 0, QTableWidgetItem(self.tr("No more matches")))
                else:
                    self.resultTable.setItem(
                        row, 0, QTableWidgetItem(self.tr("No matches")))

                # remove the highlight
                tc = self.textTextEdit.textCursor()
                tc.setPosition(0)
                self.textTextEdit.setTextCursor(tc)

            self.resultTable.resizeColumnsToContents()
            self.resultTable.resizeRowsToContents()
            self.resultTable.verticalHeader().hide()
            self.resultTable.horizontalHeader().hide()
        else:
            E5MessageBox.critical(
                self, self.tr("Error"),
                self.tr("""A regular expression and a text must"""
                        """ be given."""))
Esempio n. 10
0
 def __init__(self):
   super(VNA, self).__init__()
   self.setupUi(self)
   # IP address validator
   rx = QRegExp('^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$')
   self.addrValue.setValidator(QRegExpValidator(rx, self.addrValue))
   # state variables
   self.idle = True
   self.reading = False
   self.auto = False
   # sweep parameters
   self.sweep_start = 10
   self.sweep_stop = 60000
   self.sweep_size = 6000
   # buffer and offset for the incoming samples
   self.buffer = bytearray(16 * 32768)
   self.offset = 0
   self.data = np.frombuffer(self.buffer, np.complex64)
   # create measurements
   self.open = Measurement(self.sweep_start, self.sweep_stop, self.sweep_size)
   self.short = Measurement(self.sweep_start, self.sweep_stop, self.sweep_size)
   self.load = Measurement(self.sweep_start, self.sweep_stop, self.sweep_size)
   self.dut = Measurement(self.sweep_start, self.sweep_stop, self.sweep_size)
   self.mode = 'open'
   # create figures
   self.tabs = {}
   for i in range(len(self.graphs)):
     layout = getattr(self, '%sLayout' % self.graphs[i])
     self.tabs[i] = FigureTab(layout, self.open, self.short, self.load, self.dut)
   # configure widgets
   self.rateValue.addItems(['10000', '5000', '1000', '500', '100', '50', '10', '5', '1'])
   self.rateValue.lineEdit().setReadOnly(True)
   self.rateValue.lineEdit().setAlignment(Qt.AlignRight)
   for i in range(self.rateValue.count()):
     self.rateValue.setItemData(i, Qt.AlignRight, Qt.TextAlignmentRole)
   self.set_enabled(False)
   # read settings
   settings = QSettings('vna.ini', QSettings.IniFormat)
   self.read_cfg_settings(settings)
   # create TCP socket
   self.socket = QTcpSocket(self)
   self.socket.connected.connect(self.connected)
   self.socket.readyRead.connect(self.read_data)
   self.socket.error.connect(self.display_error)
   # connect signals from widgets
   self.connectButton.clicked.connect(self.start)
   self.writeButton.clicked.connect(self.write_cfg)
   self.readButton.clicked.connect(self.read_cfg)
   self.openSweep.clicked.connect(partial(self.sweep, 'open'))
   self.shortSweep.clicked.connect(partial(self.sweep, 'short'))
   self.loadSweep.clicked.connect(partial(self.sweep, 'load'))
   self.singleSweep.clicked.connect(partial(self.sweep, 'dut'))
   self.autoSweep.clicked.connect(self.sweep_auto)
   self.stopSweep.clicked.connect(self.cancel)
   self.csvButton.clicked.connect(self.write_csv)
   self.s1pButton.clicked.connect(self.write_s1p)
   self.s2pshortButton.clicked.connect(self.write_s2p_short)
   self.s2popenButton.clicked.connect(self.write_s2p_open)
   self.startValue.valueChanged.connect(self.set_start)
   self.stopValue.valueChanged.connect(self.set_stop)
   self.sizeValue.valueChanged.connect(self.set_size)
   self.rateValue.currentIndexChanged.connect(self.set_rate)
   self.corrValue.valueChanged.connect(self.set_corr)
   self.levelValue.valueChanged.connect(self.set_level)
   self.tabWidget.currentChanged.connect(self.update_tab)
   # create timers
   self.startTimer = QTimer(self)
   self.startTimer.timeout.connect(self.timeout)
   self.sweepTimer = QTimer(self)
   self.sweepTimer.timeout.connect(self.sweep_timeout)
Esempio n. 11
0
    def __init__(self):
        super(mainView, self).__init__()
        self.setupUi(self)
        # 主要变量初始化
        self.isShow_flag = False
        self.account = "admin"
        self.password = "******"
        self.loadTimeStr = ""
        self.isAdmin = False
        self.curPage = 1
        self.totalPage = 1

        # 日志相关变量和类的初始化
        # self.log = logout.TimedRotatingFileLog("win_log",".\\log\\", "win.log",logging.DEBUG)
        self.log = logout.RotatingFileLog("win_log", ".\\log\\", "win.log", logging.DEBUG)
        self.msg_list = []
        self.msg_list2 = []
        self.DEBUG = 1
        self.INFO = 2
        self.WARNING = 3
        self.ERROR = 4
        self.CRITICAL = 5

        # 线程锁及线程信号量初始化
        self.mutex1 = QMutex()
        self.mutex2 = QMutex()
        self.signal = threading.Event()
        self.signal.clear()

        # 初始化数据库相关信息
        my_cof = config.config()
        # my_cof.cofig_update()
        my_cof.get_config()
        self.msg_level = my_cof.level["msg_level"]

        self.ip1 = my_cof.scanner["s1_ip"]  # "172.24.24.222"
        self.port1 = my_cof.scanner["s1_port"]  # 51236
        self.ip2 = my_cof.scanner["s2_ip"]  # "172.24.24.222"
        self.port2 = my_cof.scanner["s2_port"]  # 51236
        self.db = pymysql.Connect(my_cof.mysql["host"], my_cof.mysql["user"], my_cof.mysql["passwd"],
                                  my_cof.mysql["dbName"])
        self.cursor = self.db.cursor()

        # self.db = pymysql.Connect(mysql["host"], mysql["user"], mysql["passwd"], mysql["dbName"])
        # self.cursor = self.db.cursor()

        # 系统时间显示相关类初始化
        self.updateTime = QTimer()
        self.updateTime.start(1000)
        self.updateTime.timeout.connect(self.updateTimeShow)

        # 自动刷新显示列表定时器初始化
        self.Refresh_timer = QTimer()
        self.Refresh_timer.timeout.connect(self.refreshSelf)

        # 扫码枪未连接提示
        self.scanner_statue_timer = QTimer()
        self.scanner_statue_timer.timeout.connect(self.scanner_statu_change)
        self.scanner_statue_flag = False

        # PLC未连接提示
        self.plc_statue_timer = QTimer()
        self.plc_statue_timer.timeout.connect(self.plc_statue_change)
        self.plc_statue_flag = False

        # 初始化状态栏及时间栏相关类及变量初始化
        # self.setWhatsThis("123456789")
        self.statuLable = QtWidgets.QLabel()
        # self.errLable = QtWidgets.QLabel()
        self.nowTimeLable = QtWidgets.QLabel()
        self.statuLable.setAlignment(Qt.AlignLeft)
        # self.errLable.setAlignment(Qt.AlignCenter)
        self.nowTimeLable.setAlignment(Qt.AlignRight)
        self.statusbar.addWidget(self.statuLable)
        # self.statusbar.addWidget(self.errLable)
        self.statusbar.addWidget(self.nowTimeLable)
        self.statusbar.setStyleSheet("QStatusBar::item{border: 0px}")
        self.statuLable.setText("就绪")
        # self.errLable.setStyleSheet("color:red;font:bold;font-size:12px")
        # self.errLable.setText("异常显示")
        nowtime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
        self.nowTimeLable.setText(str(nowtime))
        self.nowTimeLable.setStyleSheet("color:blue;font-size:12px")
        self.statuLable.setStyleSheet("color:red;font-size:12px")

        # 用户及登陆信息栏初始化
        self.textLable.setStyleSheet("color:blue;font:bold;font-size:14px")
        self.userLable.setStyleSheet("color:red;font:bold;font-size:14px")
        self.loadTimeLable2.setStyleSheet("color:red;font:bold;font-size:14px")

        # 设置设置信息为只读
        self.machineID.setReadOnly(True)
        self.plantID.setReadOnly(True)
        self.processNo.setReadOnly(True)
        self.localityNo.setReadOnly(True)
        self.type.setReadOnly(True)
        self.loadTime.setReadOnly(True)
        self.classBox.setEnabled(False)

        # 初始化页码显示控件
        self.curPageNoEdit.setMaximumSize(QSize(40, 20))
        self.curPageNoEdit.setStyleSheet("color:blue;font:bold;font-size:14px")
        validator = QRegExpValidator(QRegExp("\d+"))
        self.curPageNoEdit.setValidator(validator)  # 设置只能输入数字
        self.curPageNoEdit.setText(str(self.curPage))
        self.curPageNoEdit.setAlignment(Qt.AlignCenter)
        self.totalPageLable.setStyleSheet("color:blue;font:bold;font-size:14px")

        # 设置PLC和扫码枪连接状态
        self.PlcConStatu.setText("PLC等待连接")
        self.ScanConStatu.setText("扫码枪等待连接")
        self.PlcConStatu.setStyleSheet("background:none;border:none;font:bold;font-size:12px;color:#FF8800")
        self.ScanConStatu.setStyleSheet("background:none;border:none;font:bold;font-size:12px;color:#FF8800")

        # 设置各类信号与槽
        self.prevPageBtn.clicked.connect(self.onClickedPrevPageBtn)
        self.nextPageBtn.clicked.connect(self.onClickedNextPageBtn)
        self.curPageNoEdit.returnPressed.connect(self.onPressedCurPageNoEdit)

        self.setBtn.clicked.connect(self.onClickedSetBtn)
        self.changePwdBtn.clicked.connect(self.onClickedChangePwdBtn)
        self.refreshBtn.clicked.connect(self.onClickedRefreshBtn)
        self.refreshSelfBtn.clicked.connect(self.onClickedRefreshSelfBtn)

        # 设置显示列表
        # self.showTable.setHorizontalHeaderLabels(["序号", "工字轮编号", "重量1", "称重时间1", "是否二次称重", "重量2", "称重时间2"])
        self.mode = QStandardItemModel()
        self.mode.setRowCount(15)
        self.mode.setColumnCount(7)
        for i in range(0, 15):
            for j in range(0, 7):
                self.mode.setItem(i, j, QStandardItem(""))
        self.mode.setHorizontalHeaderLabels(["序号", "工字轮编号", "重量1", "称重时间1", "是否二次称重", "重量2", "称重时间2"])
        self.showTable.setModel(self.mode)
        self.showTable.verticalHeader().setVisible(False)
        self.setTable()

        # 初始化登陆界面类
        self.loginView = loginView()
        self.loginView.loginBtn.clicked.connect(self.onClickedLoginBtn)
        self.loginView.loginBtn.pressed.connect(self.onClickedLoginBtn)
        self.loginView.account.returnPressed.connect(self.onClickedLoginBtn)
        self.loginView.password.returnPressed.connect(self.onClickedLoginBtn)

        # 初始化修改密码界面类
        self.changePwdView = changePwdView()
        self.changePwdView.changeBtn.clicked.connect(self.onClickedChangeBtn_c)
        self.changePwdView.changeBtn.pressed.connect(self.onClickedChangeBtn_c)
        self.changePwdView.oldPwd.returnPressed.connect(self.onClickedChangeBtn_c)
        self.changePwdView.newPwd1.returnPressed.connect(self.onClickedChangeBtn_c)
        self.changePwdView.newPwd2.returnPressed.connect(self.onClickedChangeBtn_c)

        self.logMsgView = logMsgView()
Esempio n. 12
0
    def __init__(self, parent=None):
        super(CreateWeeklyAssignmentDialog, self).__init__(parent)
        self.setupUi(self)
        self.dateTimeEdit_startDay.setDisplayFormat("dd/MM/yyyy HH:mm")
        self.dateTimeEdit_endDay.setDisplayFormat("dd/MM/yyyy HH:mm")
        self.dateTimeEdit_cutoffDay.setDisplayFormat("dd/MM/yyyy HH:mm")
        self.dateTimeEdit_startDay.setDateTime(QDateTime.currentDateTime())
        self.dateTimeEdit_endDay.setDateTime(QDateTime.currentDateTime())
        self.dateTimeEdit_cutoffDay.setDateTime(QDateTime.currentDateTime())
        self.lineEdit_penaltyPerDay.setPlaceholderText('0')
        # only allow Integers for PenaltyPerDay and totalAttempts
        regex = QRegExp("\\d+")
        self.lineEdit_penaltyPerDay.setValidator(QRegExpValidator(regex))
        self.lineEdit_totalAttempts.setValidator(QRegExpValidator(regex))
        self.lineEdit_attendance_marks.setValidator(QRegExpValidator(regex))
        self.lineEdit_compilation_marks.setValidator(QRegExpValidator(regex))
        self.lineEdit_test1_marks.setValidator(QRegExpValidator(regex))
        self.lineEdit_test2_marks.setValidator(QRegExpValidator(regex))
        self.lineEdit_test3_marks.setValidator(QRegExpValidator(regex))
        self.lineEdit_test4_marks.setValidator(QRegExpValidator(regex))
        self.accepted.connect(lambda: self.create_weekly_assignment())
        self.buttonBox.setEnabled(False)
        self.comboBox_moduleCode.editTextChanged.connect(
            self.disable_buttonbox)
        # register listeners for all line edits
        for line_edit in self.findChildren(QLineEdit):
            line_edit.textChanged.connect(self.disable_buttonbox)
        # register listeners for all group boxes
        for group_box in self.findChildren(QGroupBox):
            group_box.toggled.connect(self.disable_buttonbox)
            group_box.toggled.connect(self.update_total_marks)
            group_box.toggled.connect(self.disable_groupbox)
        self.lineEdit_attendance_marks.textChanged.connect(
            self.update_total_marks)
        self.lineEdit_compilation_marks.textChanged.connect(
            self.update_total_marks)
        self.lineEdit_test1_marks.textChanged.connect(self.update_total_marks)
        self.lineEdit_test2_marks.textChanged.connect(self.update_total_marks)
        self.lineEdit_test3_marks.textChanged.connect(self.update_total_marks)
        self.lineEdit_test4_marks.textChanged.connect(self.update_total_marks)
        # set up initial available module codes
        self.comboBox_moduleCode.addItems(get_module_codes())
        # set up week numbers
        self.comboBox_weekNumber.addItems([
            "w01", "w02", "w03", "w04", "w05", "w06", "w07", "w08", "w09",
            "w10", "w11", "w12", "w13"
        ])
        self.groupBox_customTest1.setCheckable(False)
        self.groupBox_customTest1.setChecked(True)
        self.checkBox_test1_inputDataFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test1_inputDataFile, self.
                label_test1_inputDataFile))
        self.checkBox_test2_inputDataFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test2_inputDataFile, self.
                label_test2_inputDataFile))
        self.checkBox_test3_inputDataFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test3_inputDataFile, self.
                label_test3_inputDataFile))
        self.checkBox_test4_inputDataFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test4_inputDataFile, self.
                label_test4_inputDataFile))

        self.checkBox_test1_answerFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test1_answerFile, self.label_test1_answerFile))
        self.checkBox_test2_answerFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test2_answerFile, self.label_test2_answerFile))
        self.checkBox_test3_answerFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test3_answerFile, self.label_test3_answerFile))
        self.checkBox_test4_answerFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test4_answerFile, self.label_test4_answerFile))

        self.checkBox_test1_filterFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test1_filterFile,
                self.label_test1_filterFile,
                is_filter=True,
                filter_line_edit=self.lineEdit_test1_filterCommand))
        self.checkBox_test2_filterFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test2_filterFile,
                self.label_test2_filterFile,
                is_filter=True,
                filter_line_edit=self.lineEdit_test2_filterCommand))
        self.checkBox_test3_filterFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test3_filterFile,
                self.label_test3_filterFile,
                is_filter=True,
                filter_line_edit=self.lineEdit_test3_filterCommand))
        self.checkBox_test4_filterFile.stateChanged.connect(
            lambda: self.add_file_with_check_box(
                self.checkBox_test4_filterFile,
                self.label_test4_filterFile,
                is_filter=True,
                filter_line_edit=self.lineEdit_test4_filterCommand))

        self.lineEdit_test1_filterCommand.setDisabled(True)
        self.lineEdit_test2_filterCommand.setDisabled(True)
        self.lineEdit_test3_filterCommand.setDisabled(True)
        self.lineEdit_test4_filterCommand.setDisabled(True)
        self.checkBox_test1_filterFile.stateChanged.connect(
            self.disable_buttonbox)
        self.checkBox_test2_filterFile.stateChanged.connect(
            self.disable_buttonbox)
        self.checkBox_test3_filterFile.stateChanged.connect(
            self.disable_buttonbox)
        self.checkBox_test4_filterFile.stateChanged.connect(
            self.disable_buttonbox)
Esempio n. 13
0
 def filter_model(self, txt):
     if self.proxy:
         self.proxy.setFilterRegExp(QRegExp(txt))