diff options
author | Samuel Gaist <samuel.gaist@idiap.ch> | 2018-09-29 00:14:14 +0200 |
---|---|---|
committer | Samuel Gaist <samuel.gaist@idiap.ch> | 2019-01-26 19:52:39 +0000 |
commit | 5ae8fcd17bda45177ae7f65bf1c9f25f30706bb4 (patch) | |
tree | ddd19ae5f121c631bace7535414a8111ab2e18b0 /src/gui/kernel | |
parent | 2955afdf31e94eff79121acc7085a19c035a6dbe (diff) |
Migrate QPlatformDialogHelper to QRegularExpression
This patch updates the QPlatformDialogHelper class to use
QRegularExpression in place of QRegExp which is to be considered
deprecated.
Change-Id: I8a79c5425217d18a3210c87f7f505b1aa288801d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/gui/kernel')
-rw-r--r-- | src/gui/kernel/qplatformdialoghelper.cpp | 12 | ||||
-rw-r--r-- | src/gui/kernel/qplatformdialoghelper.h | 2 |
2 files changed, 8 insertions, 6 deletions
diff --git a/src/gui/kernel/qplatformdialoghelper.cpp b/src/gui/kernel/qplatformdialoghelper.cpp index 8b3a2ad193..d14d575056 100644 --- a/src/gui/kernel/qplatformdialoghelper.cpp +++ b/src/gui/kernel/qplatformdialoghelper.cpp @@ -41,6 +41,7 @@ #include <QtCore/QCoreApplication> #include <QtCore/QVariant> +#include <QtCore/QRegularExpression> #include <QtCore/QSharedData> #if QT_CONFIG(settings) #include <QtCore/QSettings> @@ -779,18 +780,19 @@ void QPlatformFileDialogHelper::setOptions(const QSharedPointer<QFileDialogOptio m_options = options; } -const char *QPlatformFileDialogHelper::filterRegExp = +const char QPlatformFileDialogHelper::filterRegExp[] = "^(.*)\\(([a-zA-Z0-9_.,*? +;#\\-\\[\\]@\\{\\}/!<>\\$%&=^~:\\|]*)\\)$"; // Makes a list of filters from a normal filter string "Image Files (*.png *.jpg)" QStringList QPlatformFileDialogHelper::cleanFilterList(const QString &filter) { - QRegExp regexp(QString::fromLatin1(filterRegExp)); + QRegularExpression regexp(QString::fromLatin1(filterRegExp)); Q_ASSERT(regexp.isValid()); QString f = filter; - int i = regexp.indexIn(f); - if (i >= 0) - f = regexp.cap(2); + QRegularExpressionMatch match; + filter.indexOf(regexp, 0, &match); + if (match.hasMatch()) + f = match.captured(2); return f.split(QLatin1Char(' '), QString::SkipEmptyParts); } diff --git a/src/gui/kernel/qplatformdialoghelper.h b/src/gui/kernel/qplatformdialoghelper.h index 0832e19dc3..f09bec12da 100644 --- a/src/gui/kernel/qplatformdialoghelper.h +++ b/src/gui/kernel/qplatformdialoghelper.h @@ -414,7 +414,7 @@ public: void setOptions(const QSharedPointer<QFileDialogOptions> &options); static QStringList cleanFilterList(const QString &filter); - static const char *filterRegExp; + static const char filterRegExp[]; Q_SIGNALS: void fileSelected(const QUrl &file); |