diff options
Diffstat (limited to 'src/widgets/dialogs')
-rw-r--r-- | src/widgets/dialogs/qcolordialog.cpp | 6 | ||||
-rw-r--r-- | src/widgets/dialogs/qfiledialog.cpp | 45 | ||||
-rw-r--r-- | src/widgets/dialogs/qfilesystemmodel.cpp | 4 | ||||
-rw-r--r-- | src/widgets/dialogs/qinputdialog.cpp | 2 | ||||
-rw-r--r-- | src/widgets/dialogs/qprogressdialog.cpp | 4 |
5 files changed, 37 insertions, 24 deletions
diff --git a/src/widgets/dialogs/qcolordialog.cpp b/src/widgets/dialogs/qcolordialog.cpp index 4247731275..f815f17d55 100644 --- a/src/widgets/dialogs/qcolordialog.cpp +++ b/src/widgets/dialogs/qcolordialog.cpp @@ -59,8 +59,6 @@ #include "qpushbutton.h" #if QT_CONFIG(regularexpression) #include <qregularexpression.h> -#else -#include <qregexp.h> #endif #if QT_CONFIG(settings) #include "qsettings.h" @@ -1314,10 +1312,6 @@ QColorShower::QColorShower(QColorDialog *parent) QRegularExpression regExp(QStringLiteral("#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})")); QRegularExpressionValidator *validator = new QRegularExpressionValidator(regExp, this); htEd->setValidator(validator); -#elif !defined(QT_NO_REGEXP) - QRegExp regExp(QStringLiteral("#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})")); - QRegExpValidator *validator = new QRegExpValidator(regExp, this); - htEd->setValidator(validator); #else htEd->setReadOnly(true); #endif diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index bace311924..a319361ad8 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -48,8 +48,11 @@ #include <private/qguiapplication_p.h> #include <qfontmetrics.h> #include <qaction.h> +#include <qactiongroup.h> #include <qheaderview.h> -#include <qshortcut.h> +#if QT_CONFIG(shortcut) +# include <qshortcut.h> +#endif #include <qgridlayout.h> #if QT_CONFIG(menu) #include <qmenu.h> @@ -65,6 +68,9 @@ #if QT_CONFIG(mimetype) #include <qmimedatabase.h> #endif +#if QT_CONFIG(regularexpression) +#include <qregularexpression.h> +#endif #include <qapplication.h> #include <qstylepainter.h> #include "ui_qfiledialog.h" @@ -344,7 +350,9 @@ Q_GLOBAL_STATIC(QUrl, lastVisitedDir) QT_BEGIN_INCLUDE_NAMESPACE #include <QMetaEnum> -#include <qshortcut.h> +#if QT_CONFIG(shortcut) +# include <qshortcut.h> +#endif QT_END_INCLUDE_NAMESPACE /*! @@ -1408,18 +1416,22 @@ bool QFileDialog::isNameFilterDetailsVisible() const */ QStringList qt_strip_filters(const QStringList &filters) { +#if QT_CONFIG(regularexpression) QStringList strippedFilters; - QRegExp r(QString::fromLatin1(QPlatformFileDialogHelper::filterRegExp)); + QRegularExpression r(QString::fromLatin1(QPlatformFileDialogHelper::filterRegExp)); const int numFilters = filters.count(); strippedFilters.reserve(numFilters); for (int i = 0; i < numFilters; ++i) { QString filterName; - int index = r.indexIn(filters[i]); - if (index >= 0) - filterName = r.cap(1); + auto match = r.match(filters[i]); + if (match.hasMatch()) + filterName = match.captured(1); strippedFilters.append(filterName.simplified()); } return strippedFilters; +#else + return filters; +#endif } @@ -2015,6 +2027,9 @@ QStringList QFileDialog::history() const Sets the item delegate used to render items in the views in the file dialog to the given \a delegate. + Any existing delegate will be removed, but not deleted. QFileDialog + does not take ownership of \a delegate. + \warning You should not share the same instance of a delegate between views. Doing so can cause incorrect or unintuitive editing behavior since each view connected to a given delegate may receive the \l{QAbstractItemDelegate::}{closeEditor()} @@ -3123,7 +3138,7 @@ void QFileDialogPrivate::createWidgets() QObject::connect(qFileDialogUi->buttonBox, SIGNAL(rejected()), q, SLOT(reject())); qFileDialogUi->lookInCombo->setFileDialogPrivate(this); - QObject::connect(qFileDialogUi->lookInCombo, SIGNAL(activated(QString)), q, SLOT(_q_goToDirectory(QString))); + QObject::connect(qFileDialogUi->lookInCombo, SIGNAL(textActivated(QString)), q, SLOT(_q_goToDirectory(QString))); qFileDialogUi->lookInCombo->setInsertPolicy(QComboBox::NoInsert); qFileDialogUi->lookInCombo->setDuplicatesEnabled(false); @@ -3153,7 +3168,7 @@ void QFileDialogPrivate::createWidgets() qFileDialogUi->fileTypeCombo->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); QObject::connect(qFileDialogUi->fileTypeCombo, SIGNAL(activated(int)), q, SLOT(_q_useNameFilter(int))); - QObject::connect(qFileDialogUi->fileTypeCombo, SIGNAL(activated(QString)), + QObject::connect(qFileDialogUi->fileTypeCombo, SIGNAL(textActivated(QString)), q, SIGNAL(filterSelected(QString))); qFileDialogUi->listView->setFileDialogPrivate(this); @@ -4337,7 +4352,7 @@ QStringList QFSCompleter::splitPath(const QString &path) const return QStringList(completionPrefix()); QString pathCopy = QDir::toNativeSeparators(path); - QString sep = QDir::separator(); + QChar sep = QDir::separator(); #if defined(Q_OS_WIN) if (pathCopy == QLatin1String("\\") || pathCopy == QLatin1String("\\\\")) return QStringList(pathCopy); @@ -4361,24 +4376,22 @@ QStringList QFSCompleter::splitPath(const QString &path) const } #endif - QRegExp re(QLatin1Char('[') + QRegExp::escape(sep) + QLatin1Char(']')); - #if defined(Q_OS_WIN) - QStringList parts = pathCopy.split(re, Qt::SkipEmptyParts); + QStringList parts = pathCopy.split(sep, Qt::SkipEmptyParts); if (!doubleSlash.isEmpty() && !parts.isEmpty()) parts[0].prepend(doubleSlash); if (pathCopy.endsWith(sep)) parts.append(QString()); #else - QStringList parts = pathCopy.split(re); - if (pathCopy[0] == sep[0]) // read the "/" at the beginning as the split removed it - parts[0] = sep[0]; + QStringList parts = pathCopy.split(sep); + if (pathCopy[0] == sep) // read the "/" at the beginning as the split removed it + parts[0] = sep; #endif #if defined(Q_OS_WIN) bool startsFromRoot = !parts.isEmpty() && parts[0].endsWith(QLatin1Char(':')); #else - bool startsFromRoot = pathCopy[0] == sep[0]; + bool startsFromRoot = pathCopy[0] == sep; #endif if (parts.count() == 1 || (parts.count() > 1 && !startsFromRoot)) { const QFileSystemModel *dirModel; diff --git a/src/widgets/dialogs/qfilesystemmodel.cpp b/src/widgets/dialogs/qfilesystemmodel.cpp index 4644f0f04e..6afdfa6eb9 100644 --- a/src/widgets/dialogs/qfilesystemmodel.cpp +++ b/src/widgets/dialogs/qfilesystemmodel.cpp @@ -1709,6 +1709,8 @@ void QFileSystemModel::setNameFilters(const QStringList &filters) d->nameFilters = filters; d->forceSort = true; d->delayedSort(); +#else + Q_UNUSED(filters) #endif } @@ -2158,6 +2160,8 @@ bool QFileSystemModelPrivate::passNameFilters(const QFileSystemNode *node) const } return false; } +#else + Q_UNUSED(node) #endif return true; } diff --git a/src/widgets/dialogs/qinputdialog.cpp b/src/widgets/dialogs/qinputdialog.cpp index 415214d6ea..836d3bc1de 100644 --- a/src/widgets/dialogs/qinputdialog.cpp +++ b/src/widgets/dialogs/qinputdialog.cpp @@ -300,7 +300,7 @@ void QInputDialogPrivate::ensureComboBox() comboBox->hide(); QObject::connect(comboBox, SIGNAL(editTextChanged(QString)), q, SLOT(_q_textChanged(QString))); - QObject::connect(comboBox, SIGNAL(currentIndexChanged(QString)), + QObject::connect(comboBox, SIGNAL(currentTextChanged(QString)), q, SLOT(_q_textChanged(QString))); } } diff --git a/src/widgets/dialogs/qprogressdialog.cpp b/src/widgets/dialogs/qprogressdialog.cpp index 40548e22a5..aaa4430c39 100644 --- a/src/widgets/dialogs/qprogressdialog.cpp +++ b/src/widgets/dialogs/qprogressdialog.cpp @@ -39,7 +39,9 @@ #include "qprogressdialog.h" -#include "qshortcut.h" +#if QT_CONFIG(shortcut) +# include "qshortcut.h" +#endif #include "qpainter.h" #include "qdrawutil.h" #include "qlabel.h" |