diff options
author | Tobias Hunger <tobias.hunger@qt.io> | 2017-06-20 12:07:07 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@qt.io> | 2017-06-20 12:03:15 +0000 |
commit | 7e81d330d9c6346f8dc485666709b787f6482d3f (patch) | |
tree | e17b052dab662e74902cdf6621066d0fb64103b8 | |
parent | 4dc3ef8034d026e968146fd47e4c7dc0d4a29d34 (diff) | |
download | qt-creator-7e81d330d9c6346f8dc485666709b787f6482d3f.tar.gz |
CMake: Hide INTERNAL and STATIC configuration entries in Project UI
Task-number: QTCREATORBUG-18403
Change-Id: I6b69305ff0dc337da1d8b20e0321be5ce1b1f595
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r-- | src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp | 4 | ||||
-rw-r--r-- | src/plugins/cmakeprojectmanager/configmodel.cpp | 9 | ||||
-rw-r--r-- | src/plugins/cmakeprojectmanager/configmodel.h | 1 |
3 files changed, 11 insertions, 3 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp index 8ae17f13d7..8bba67e359 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp +++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp @@ -280,7 +280,9 @@ QList<ConfigModel::DataItem> CMakeBuildConfiguration::completeCMakeConfiguration j.values = i.values; j.inCMakeCache = i.inCMakeCache; - j.isAdvanced = i.isAdvanced || i.type == CMakeConfigItem::INTERNAL; + j.isAdvanced = i.isAdvanced; + j.isHidden = i.type == CMakeConfigItem::INTERNAL || i.type == CMakeConfigItem::STATIC; + switch (i.type) { case CMakeConfigItem::FILEPATH: j.type = ConfigModel::DataItem::FILE; diff --git a/src/plugins/cmakeprojectmanager/configmodel.cpp b/src/plugins/cmakeprojectmanager/configmodel.cpp index 98d9cf05b7..7336a2a7a2 100644 --- a/src/plugins/cmakeprojectmanager/configmodel.cpp +++ b/src/plugins/cmakeprojectmanager/configmodel.cpp @@ -257,7 +257,9 @@ void ConfigModel::setConfiguration(const QList<ConfigModel::DataItem> &config) QList<InternalDataItem> result; while (newIt != newEndIt && oldIt != oldEndIt) { - if (newIt->key < oldIt->key) { + if (newIt->isHidden) { + ++newIt; + } else if (newIt->key < oldIt->key) { // Add new entry: result << InternalDataItem(*newIt); ++newIt; @@ -279,8 +281,11 @@ void ConfigModel::setConfiguration(const QList<ConfigModel::DataItem> &config) } // Add remaining new entries: - for (; newIt != newEndIt; ++newIt) + for (; newIt != newEndIt; ++newIt) { + if (newIt->isHidden) + continue; result << InternalDataItem(*newIt); + } beginResetModel(); m_configuration = result; diff --git a/src/plugins/cmakeprojectmanager/configmodel.h b/src/plugins/cmakeprojectmanager/configmodel.h index 94fef0b664..f9629f702f 100644 --- a/src/plugins/cmakeprojectmanager/configmodel.h +++ b/src/plugins/cmakeprojectmanager/configmodel.h @@ -45,6 +45,7 @@ public: QString key; Type type = STRING; + bool isHidden = false; bool isAdvanced = false; bool inCMakeCache = false; QString value; |