diff --git a/sources/qetregexpvalidator.cpp b/sources/qetregexpvalidator.cpp index d6c01b3fb..e4f409b3f 100644 --- a/sources/qetregexpvalidator.cpp +++ b/sources/qetregexpvalidator.cpp @@ -1,27 +1,30 @@ /* Copyright 2006-2020 The QElectroTech Team This file is part of QElectroTech. - + QElectroTech is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. - + QElectroTech is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ #include "qetregexpvalidator.h" +#include /** Constructeur @param parent QObject parent */ -QETRegExpValidator::QETRegExpValidator(QObject *parent) : QRegExpValidator(parent) { +QETRegExpValidator::QETRegExpValidator(QObject *parent) + : QRegularExpressionValidator(parent) +{ } /** @@ -29,7 +32,10 @@ QETRegExpValidator::QETRegExpValidator(QObject *parent) : QRegExpValidator(paren @param regexp Expression reguliere a valider @param parent QObject parent */ -QETRegExpValidator::QETRegExpValidator(const QRegExp ®exp, QObject *parent) : QRegExpValidator(regexp, parent) { +QETRegExpValidator::QETRegExpValidator( + const QRegularExpression ®exp, QObject *parent) : + QRegularExpressionValidator(regexp, parent) +{ } /** @@ -40,13 +46,15 @@ QETRegExpValidator::~QETRegExpValidator() } /** - @see QRegExpValidator::validate + @see QRegularExpressionValidator::validate @see validationFailed() Emet le signal validationFailed si la validation echoue */ QValidator::State QETRegExpValidator::validate(QString &input, int &pos) const { - QValidator::State result = QRegExpValidator::validate(input, pos); - if (result == QValidator::Invalid) emit(validationFailed()); + QValidator::State result = QRegularExpressionValidator::validate( + input, pos); + if (result == QValidator::Invalid) + emit(validationFailed()); return(result); } diff --git a/sources/qetregexpvalidator.h b/sources/qetregexpvalidator.h index d11981ff4..4224112b1 100644 --- a/sources/qetregexpvalidator.h +++ b/sources/qetregexpvalidator.h @@ -1,42 +1,42 @@ /* Copyright 2006-2020 The QElectroTech Team This file is part of QElectroTech. - + QElectroTech is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. - + QElectroTech is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ #ifndef QET_REGEXP_VALIDATOR_H #define QET_REGEXP_VALIDATOR_H -#include +#include /** - This class acts like a QRegExpValidator except it emits a signal when the - input validation fails. + This class acts like a QRegularExpressionValidator + except it emits a signal when the input validation fails. */ -class QETRegExpValidator : public QRegExpValidator { +class QETRegExpValidator : public QRegularExpressionValidator { Q_OBJECT - + // constructors, destructor public: QETRegExpValidator(QObject *); - QETRegExpValidator(const QRegExp &, QObject *); + QETRegExpValidator(const QRegularExpression &, QObject *); ~QETRegExpValidator() override; private: QETRegExpValidator(const QETRegExpValidator &); - + // methods public: QValidator::State validate(QString &, int &) const override; - + signals: void validationFailed() const; }; diff --git a/sources/qfilenameedit.cpp b/sources/qfilenameedit.cpp index 918329713..2999ba829 100644 --- a/sources/qfilenameedit.cpp +++ b/sources/qfilenameedit.cpp @@ -1,24 +1,24 @@ /* Copyright 2006-2020 The QElectroTech Team This file is part of QElectroTech. - + QElectroTech is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. - + QElectroTech is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ #include "qfilenameedit.h" #include "qetregexpvalidator.h" #include -#include +#include #include /** @@ -36,7 +36,7 @@ QFileNameEdit::QFileNameEdit(QWidget *parent) : QLineEdit(parent) { */ QFileNameEdit::QFileNameEdit(const QString &contents, QWidget *parent) : QLineEdit(parent) { init(); - if (!contents.isEmpty() && regexp_.exactMatch(contents)) { + if (!contents.isEmpty() && regexp_==QRegularExpression(contents)) { setText(contents); } } @@ -61,7 +61,7 @@ bool QFileNameEdit::isEmpty() */ bool QFileNameEdit::isValid() { - return(regexp_.exactMatch(text())); + return(regexp_==QRegularExpression(text())); } /** @@ -69,7 +69,7 @@ bool QFileNameEdit::isValid() */ void QFileNameEdit::init() { - regexp_ = QRegExp("^[0-9a-z_\\-\\.]+$", Qt::CaseSensitive); + regexp_ = QRegularExpression("^[0-9a-z_\\-\\.]+$"); validator_ = new QETRegExpValidator(regexp_, this); setValidator(validator_); tooltip_text_ = QString( diff --git a/sources/qfilenameedit.h b/sources/qfilenameedit.h index 5d5ca8fc2..c688e1a8b 100644 --- a/sources/qfilenameedit.h +++ b/sources/qfilenameedit.h @@ -1,25 +1,25 @@ /* Copyright 2006-2020 The QElectroTech Team This file is part of QElectroTech. - + QElectroTech is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. - + QElectroTech is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ #ifndef Q_FILENAME_EDIT_H #define Q_FILENAME_EDIT_H #include -#include #include +#include class QETRegExpValidator; /** This class represents a textfield dedicated to input a portable filename (not @@ -31,7 +31,7 @@ class QETRegExpValidator; */ class QFileNameEdit : public QLineEdit { Q_OBJECT - + // constructors, destructor public: QFileNameEdit(QWidget * = nullptr); @@ -39,22 +39,22 @@ class QFileNameEdit : public QLineEdit { ~QFileNameEdit() override; private: QFileNameEdit(const QFileNameEdit &); - + // methods public: bool isEmpty(); bool isValid(); - + private: void init(); void displayToolTip(); - + private slots: void validationFailed(); - + // attributes private: - QRegExp regexp_; + QRegularExpression regexp_; QETRegExpValidator *validator_; QString tooltip_text_; };