From fc6d5ed18da29138494803baa11c0edc22ace7f4 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 3 Feb 2016 12:45:21 +0100 Subject: QFileDialogOptions: Expose default name filter setting. Move the bool QFileDialogPrivate::defaultFileTypes to QFileDialogOptions as defaultNameFilters and add a static function returning the translated default filter string. Let QFileDialogOptions::nameFilters() return the default filter until a value has been set. This removes the need for special handling for empty filter lists in the QPA plugins. As a side effect, Qt Quick Controls's FileDialog will then also default to "All files" if no filters have been set. Task-number: QTBUG-50644 Change-Id: I9ba271a472d4fa03767b540ef6f1399f5ca4408e Reviewed-by: Richard Moe Gustavsen --- src/widgets/dialogs/qfiledialog.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/widgets/dialogs/qfiledialog.cpp') diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index 07422f8811..4d74292e8f 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -532,7 +532,6 @@ QFileDialogPrivate::QFileDialogPrivate() deleteAction(0), showHiddenAction(0), useDefaultCaption(true), - defaultFileTypes(true), qFileDialogUi(0), options(new QFileDialogOptions) { @@ -663,8 +662,8 @@ void QFileDialogPrivate::retranslateStrings() { Q_Q(QFileDialog); /* WIDGETS */ - if (defaultFileTypes) - q->setNameFilter(QFileDialog::tr("All Files (*)")); + if (options->useDefaultNameFilters()) + q->setNameFilter(QFileDialogOptions::defaultNameFilterString()); if (nativeDialogInUse) return; @@ -1400,7 +1399,6 @@ QStringList qt_strip_filters(const QStringList &filters) void QFileDialog::setNameFilters(const QStringList &filters) { Q_D(QFileDialog); - d->defaultFileTypes = (filters == QStringList(QFileDialog::tr("All Files (*)"))); QStringList cleanedFilters; const int numFilters = filters.count(); cleanedFilters.reserve(numFilters); -- cgit v1.2.3