diff options
author | Sankhesh Jhaveri <sankhesh.jhaveri@kitware.com> | 2020-12-17 23:28:24 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2021-01-05 16:03:30 (GMT) |
commit | 020b2766f31c19f6a5953e3365641aeba06c3552 (patch) | |
tree | 3e8fa9c0b06124871ca7f9200f9b276aef9b7e35 | |
parent | 684dcdbc5bb6998606bdb8631cbab5e1905b762c (diff) | |
download | CMake-020b2766f31c19f6a5953e3365641aeba06c3552.zip CMake-020b2766f31c19f6a5953e3365641aeba06c3552.tar.gz CMake-020b2766f31c19f6a5953e3365641aeba06c3552.tar.bz2 |
cmake-gui: Replace obsolete QDirModel with QFileSystemModel
-rw-r--r-- | Source/QtDialog/QCMakeWidgets.cxx | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/Source/QtDialog/QCMakeWidgets.cxx b/Source/QtDialog/QCMakeWidgets.cxx index e68faba..45fd425 100644 --- a/Source/QtDialog/QCMakeWidgets.cxx +++ b/Source/QtDialog/QCMakeWidgets.cxx @@ -1,17 +1,13 @@ /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing for details. */ -// FIXME: Port to QFileSystemModel from the deprecated QDirModel. -// Be sure completion works when incrementally editing existing paths. -#define QT_DEPRECATED_WARNINGS_SINCE QT_VERSION_CHECK(5, 14, 0) - #include "QCMakeWidgets.h" #include <utility> -#include <QDirModel> #include <QFileDialog> #include <QFileInfo> +#include <QFileSystemModel> #include <QResizeEvent> #include <QToolButton> @@ -93,20 +89,20 @@ void QCMakePathEditor::chooseFile() } } -// use same QDirModel for all completers -static QDirModel* fileDirModel() +// use same QFileSystemModel for all completers +static QFileSystemModel* fileDirModel() { - static QDirModel* m = nullptr; + static QFileSystemModel* m = nullptr; if (!m) { - m = new QDirModel(); + m = new QFileSystemModel(); } return m; } -static QDirModel* pathDirModel() +static QFileSystemModel* pathDirModel() { - static QDirModel* m = nullptr; + static QFileSystemModel* m = nullptr; if (!m) { - m = new QDirModel(); + m = new QFileSystemModel(); m->setFilter(QDir::AllDirs | QDir::Drives | QDir::NoDotAndDotDot); } return m; @@ -115,8 +111,9 @@ static QDirModel* pathDirModel() QCMakeFileCompleter::QCMakeFileCompleter(QObject* o, bool dirs) : QCompleter(o) { - QDirModel* m = dirs ? pathDirModel() : fileDirModel(); + QFileSystemModel* m = dirs ? pathDirModel() : fileDirModel(); this->setModel(m); + m->setRootPath(QString()); } QString QCMakeFileCompleter::pathFromIndex(const QModelIndex& idx) const |