CMake: Mark configuration items that were taken from the CMakeCache.txt file

Change-Id: Id9e707d7b07d35ade44959955db61810e34f7b30
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Tobias Hunger
2017-01-18 16:53:01 +01:00
parent 0f7d75ccf5
commit df62701801
5 changed files with 15 additions and 6 deletions

View File

@@ -106,6 +106,7 @@ QVariant ConfigModel::data(const QModelIndex &index, int role) const
QFont font;
font.setItalic(item.isCMakeChanged);
font.setBold(item.isUserNew);
font.setStrikeOut(!item.inCMakeCache && !item.isUserNew);
return font;
}
default:
@@ -307,16 +308,16 @@ bool ConfigModel::hasCMakeChanges() const
QList<ConfigModel::DataItem> ConfigModel::configurationChanges() const
{
QList<DataItem> result;
const QList<InternalDataItem> tmp
= Utils::filtered(m_configuration, [](const InternalDataItem &i) { return i.isUserChanged || i.isUserNew; });
foreach (const InternalDataItem &item, tmp) {
= Utils::filtered(m_configuration, [](const InternalDataItem &i) {
return i.isUserChanged || i.isUserNew || !i.inCMakeCache;
});
return Utils::transform(tmp, [](const InternalDataItem &item) {
DataItem newItem(item);
if (item.isUserChanged)
newItem.value = item.newValue;
result << newItem;
}
return result;
return newItem;
});
}
ConfigModel::InternalDataItem &ConfigModel::itemAtRow(int row)