diff options
author | Elvis Angelaccio <elvis.angelaccio@kde.org> | 2016-09-05 12:32:35 +0200 |
---|---|---|
committer | David Faure <david.faure@kdab.com> | 2017-01-06 16:27:41 +0000 |
commit | 34f82b8abcb279542b6350e70609c549e39caafb (patch) | |
tree | ad66121fcdd09f6e1278e1142f9e17a264863373 /src/gui/kernel/qplatformdialoghelper.cpp | |
parent | bc80cef1d4bb07605cba81de082625f07fc4136b (diff) |
Improve mime type filters in QFileDialog
This patch improves the handling of mime type filters in QFileDialog.
The main change is in selectMimeTypeFilter(), which was just falling back
unconditionally on selectNameFilter(). Instead, mime type filters should
have an higher priority than name filters.
This patch also adds a new selectedMimeTypeFilter() method, which is used in the unit test.
Change-Id: Ice8bb08f5ff46e4a942d539f6001424eca878f74
Reviewed-by: David Faure <david.faure@kdab.com>
Diffstat (limited to 'src/gui/kernel/qplatformdialoghelper.cpp')
-rw-r--r-- | src/gui/kernel/qplatformdialoghelper.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/gui/kernel/qplatformdialoghelper.cpp b/src/gui/kernel/qplatformdialoghelper.cpp index c36186b815..16f31db50d 100644 --- a/src/gui/kernel/qplatformdialoghelper.cpp +++ b/src/gui/kernel/qplatformdialoghelper.cpp @@ -451,6 +451,7 @@ public: QString defaultSuffix; QStringList history; QUrl initialDirectory; + QString initiallySelectedMimeTypeFilter; QString initiallySelectedNameFilter; QList<QUrl> initiallySelectedFiles; QStringList supportedSchemes; @@ -668,6 +669,16 @@ void QFileDialogOptions::setInitialDirectory(const QUrl &directory) d->initialDirectory = directory; } +QString QFileDialogOptions::initiallySelectedMimeTypeFilter() const +{ + return d->initiallySelectedMimeTypeFilter; +} + +void QFileDialogOptions::setInitiallySelectedMimeTypeFilter(const QString &filter) +{ + d->initiallySelectedMimeTypeFilter = filter; +} + QString QFileDialogOptions::initiallySelectedNameFilter() const { return d->initiallySelectedNameFilter; @@ -699,6 +710,16 @@ QStringList QFileDialogOptions::supportedSchemes() const return d->supportedSchemes; } +void QPlatformFileDialogHelper::selectMimeTypeFilter(const QString &filter) +{ + Q_UNUSED(filter) +} + +QString QPlatformFileDialogHelper::selectedMimeTypeFilter() const +{ + return QString(); +} + // Return true if the URL is supported by the filedialog implementation *and* by the application. bool QPlatformFileDialogHelper::isSupportedUrl(const QUrl &url) const { |