diff options
Diffstat (limited to 'src/gui/kernel/qplatformdialoghelper.cpp')
-rw-r--r-- | src/gui/kernel/qplatformdialoghelper.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/gui/kernel/qplatformdialoghelper.cpp b/src/gui/kernel/qplatformdialoghelper.cpp index 6a0adca9ca..d14d575056 100644 --- a/src/gui/kernel/qplatformdialoghelper.cpp +++ b/src/gui/kernel/qplatformdialoghelper.cpp @@ -41,8 +41,11 @@ #include <QtCore/QCoreApplication> #include <QtCore/QVariant> +#include <QtCore/QRegularExpression> #include <QtCore/QSharedData> +#if QT_CONFIG(settings) #include <QtCore/QSettings> +#endif #include <QtCore/QUrl> #include <QtCore/QVector> #include <QtGui/QColor> @@ -296,7 +299,7 @@ QColorDialogStaticData::QColorDialogStaticData() : customSet(false) void QColorDialogStaticData::readSettings() { -#ifndef QT_NO_SETTINGS +#if QT_CONFIG(settings) const QSettings settings(QSettings::UserScope, QStringLiteral("QtProject")); for (int i = 0; i < int(CustomColorCount); ++i) { const QVariant v = settings.value(QLatin1String("Qt/customColors/") + QString::number(i)); @@ -308,7 +311,7 @@ void QColorDialogStaticData::readSettings() void QColorDialogStaticData::writeSettings() const { -#ifndef QT_NO_SETTINGS +#if QT_CONFIG(settings) if (customSet) { const_cast<QColorDialogStaticData*>(this)->customSet = false; QSettings settings(QSettings::UserScope, QStringLiteral("QtProject")); @@ -777,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); } |