From ab1e0961d4718fb5e36e22c3b70dd98e776e0edd Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Wed, 24 Jun 2020 22:12:09 +0200 Subject: QFileDialog: remove deprecated mode QFileDialog::DirectoryOnly Change-Id: Ia06e80c1bbed3e5bb80793aebd0a4780eb81a36b Reviewed-by: Friedemann Kleint --- src/widgets/dialogs/qfiledialog.cpp | 57 ++++--------------------------------- src/widgets/dialogs/qfiledialog.h | 3 +- 2 files changed, 7 insertions(+), 53 deletions(-) (limited to 'src/widgets/dialogs') diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index acc59c40dc..712ef5824e 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -210,10 +210,6 @@ Q_GLOBAL_STATIC(QUrl, lastVisitedDir) directory chooser. \value ExistingFiles The names of zero or more existing files. - This value is obsolete since Qt 4.5: - - \value DirectoryOnly Use \c Directory and setOption(ShowDirsOnly, true) instead. - \sa setFileMode() */ @@ -598,13 +594,10 @@ void QFileDialogPrivate::retranslateWindowTitle() return; if (q->acceptMode() == QFileDialog::AcceptOpen) { const QFileDialog::FileMode fileMode = q->fileMode(); -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - if (fileMode == QFileDialog::DirectoryOnly || fileMode == QFileDialog::Directory) + if (fileMode == QFileDialog::Directory) q->setWindowTitle(QFileDialog::tr("Find Directory")); else q->setWindowTitle(QFileDialog::tr("Open")); -QT_WARNING_POP } else q->setWindowTitle(QFileDialog::tr("Save As")); @@ -628,10 +621,6 @@ void QFileDialogPrivate::updateFileNameLabel() setLabelTextControl(QFileDialog::FileName, options->labelText(QFileDialogOptions::FileName)); } else { switch (q_func()->fileMode()) { -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - case QFileDialog::DirectoryOnly: -QT_WARNING_POP case QFileDialog::Directory: setLabelTextControl(QFileDialog::FileName, QFileDialog::tr("Directory:")); break; @@ -659,10 +648,6 @@ void QFileDialogPrivate::updateOkButtonText(bool saveAsOnFolder) return; } else { switch (q->fileMode()) { -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - case QFileDialog::DirectoryOnly: -QT_WARNING_POP case QFileDialog::Directory: setLabelTextControl(QFileDialog::Accept, QFileDialog::tr("&Choose")); break; @@ -1713,13 +1698,6 @@ void QFileDialog::setFileMode(QFileDialog::FileMode mode) { Q_D(QFileDialog); d->options->setFileMode(static_cast(mode)); - - // keep ShowDirsOnly option in sync with fileMode (BTW, DirectoryOnly is obsolete) -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - setOption(ShowDirsOnly, mode == DirectoryOnly); -QT_WARNING_POP - if (!d->usingWidgets()) return; @@ -1736,14 +1714,11 @@ QT_WARNING_POP // set filter d->model->setFilter(d->filterForMode(filter())); // setup file type for directory -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - if (mode == DirectoryOnly || mode == Directory) { + if (mode == Directory) { d->qFileDialogUi->fileTypeCombo->clear(); d->qFileDialogUi->fileTypeCombo->addItem(tr("Directories")); d->qFileDialogUi->fileTypeCombo->setEnabled(false); } -QT_WARNING_POP d->updateFileNameLabel(); d->updateOkButtonText(); d->qFileDialogUi->fileTypeCombo->setEnabled(!testOption(ShowDirsOnly)); @@ -2648,10 +2623,7 @@ QUrl QFileDialog::getExistingDirectoryUrl(QWidget *parent, args.parent = parent; args.caption = caption; args.directory = QFileDialogPrivate::workingDirectory(dir); -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - args.mode = (options & ShowDirsOnly ? DirectoryOnly : Directory); -QT_WARNING_POP + args.mode = Directory; args.options = options; QFileDialog dialog(args); @@ -2764,10 +2736,6 @@ void QFileDialog::accept() } switch (fileMode()) { -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - case DirectoryOnly: -QT_WARNING_POP case Directory: { QString fn = files.first(); QFileInfo info(fn); @@ -3712,10 +3680,6 @@ void QFileDialogPrivate::_q_updateOkButton() isOpenDirectory = true; } else { switch (fileMode) { -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - case QFileDialog::DirectoryOnly: -QT_WARNING_POP case QFileDialog::Directory: { QString fn = files.first(); QModelIndex idx = model->index(fn); @@ -3807,15 +3771,11 @@ void QFileDialogPrivate::_q_enterDirectory(const QModelIndex &index) const QFileDialog::FileMode fileMode = q->fileMode(); q->setDirectory(path); emit q->directoryEntered(path); -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - if (fileMode == QFileDialog::Directory - || fileMode == QFileDialog::DirectoryOnly) { + if (fileMode == QFileDialog::Directory) { // ### find out why you have to do both of these. lineEdit()->setText(QString()); lineEdit()->clear(); } -QT_WARNING_POP } else { // Do not accept when shift-clicking to multi-select a file in environments with single-click-activation (KDE) if (!q->style()->styleHint(QStyle::SH_ItemView_ActivateItemOnSingleClick, nullptr, qFileDialogUi->treeView) @@ -3907,10 +3867,7 @@ void QFileDialogPrivate::_q_selectionChanged() { const QFileDialog::FileMode fileMode = q_func()->fileMode(); const QModelIndexList indexes = qFileDialogUi->listView->selectionModel()->selectedRows(); -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - bool stripDirs = (fileMode != QFileDialog::DirectoryOnly && fileMode != QFileDialog::Directory); -QT_WARNING_POP + bool stripDirs = fileMode != QFileDialog::Directory; QStringList allFiles; for (const auto &index : indexes) { @@ -3962,9 +3919,7 @@ void QFileDialogPrivate::_q_rowsInserted(const QModelIndex &parent) void QFileDialogPrivate::_q_fileRenamed(const QString &path, const QString &oldName, const QString &newName) { const QFileDialog::FileMode fileMode = q_func()->fileMode(); -QT_WARNING_PUSH -QT_WARNING_DISABLE_DEPRECATED - if (fileMode == QFileDialog::Directory || fileMode == QFileDialog::DirectoryOnly) { + if (fileMode == QFileDialog::Directory) { if (path == rootPath() && lineEdit()->text() == oldName) lineEdit()->setText(newName); } diff --git a/src/widgets/dialogs/qfiledialog.h b/src/widgets/dialogs/qfiledialog.h index 3703e7be26..0949302ef5 100644 --- a/src/widgets/dialogs/qfiledialog.h +++ b/src/widgets/dialogs/qfiledialog.h @@ -73,8 +73,7 @@ class Q_WIDGETS_EXPORT QFileDialog : public QDialog public: enum ViewMode { Detail, List }; Q_ENUM(ViewMode) - enum FileMode { AnyFile, ExistingFile, Directory, ExistingFiles, - DirectoryOnly Q_DECL_ENUMERATOR_DEPRECATED_X("Use setOption(ShowDirsOnly, true) instead")}; + enum FileMode { AnyFile, ExistingFile, Directory, ExistingFiles }; Q_ENUM(FileMode) enum AcceptMode { AcceptOpen, AcceptSave }; Q_ENUM(AcceptMode) -- cgit v1.2.3