summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2017-06-20 12:07:07 +0200
committerTobias Hunger <tobias.hunger@qt.io>2017-06-20 12:03:15 +0000
commit7e81d330d9c6346f8dc485666709b787f6482d3f (patch)
treee17b052dab662e74902cdf6621066d0fb64103b8
parent4dc3ef8034d026e968146fd47e4c7dc0d4a29d34 (diff)
downloadqt-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.cpp4
-rw-r--r--src/plugins/cmakeprojectmanager/configmodel.cpp9
-rw-r--r--src/plugins/cmakeprojectmanager/configmodel.h1
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;