forked from qt-creator/qt-creator
CMakeProjectManager: Some code cosmetics
Move non-exported classed to Internal namespace, move some functions out-of-line. Change-Id: I3a2135104d09c0c3f799c5b8d795c93059b1ae95 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
@@ -35,12 +35,103 @@
|
||||
#include <QSortFilterProxyModel>
|
||||
|
||||
namespace CMakeProjectManager {
|
||||
namespace Internal {
|
||||
|
||||
// DataItem
|
||||
|
||||
ConfigModel::DataItem::DataItem(const CMakeConfigItem &cmi)
|
||||
{
|
||||
key = QString::fromUtf8(cmi.key);
|
||||
value = QString::fromUtf8(cmi.value);
|
||||
description = QString::fromUtf8(cmi.documentation);
|
||||
values = cmi.values;
|
||||
inCMakeCache = cmi.inCMakeCache;
|
||||
|
||||
isAdvanced = cmi.isAdvanced;
|
||||
isInitial = cmi.isInitial;
|
||||
isHidden = cmi.type == CMakeConfigItem::INTERNAL || cmi.type == CMakeConfigItem::STATIC;
|
||||
|
||||
setType(cmi.type);
|
||||
}
|
||||
|
||||
void ConfigModel::DataItem::setType(CMakeConfigItem::Type cmt)
|
||||
{
|
||||
switch (cmt) {
|
||||
case CMakeConfigItem::FILEPATH:
|
||||
type = FILE;
|
||||
break;
|
||||
case CMakeConfigItem::PATH:
|
||||
type = DIRECTORY;
|
||||
break;
|
||||
case CMakeConfigItem::BOOL:
|
||||
type = BOOLEAN;
|
||||
break;
|
||||
case CMakeConfigItem::STRING:
|
||||
type = STRING;
|
||||
break;
|
||||
default:
|
||||
type = UNKNOWN;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
QString ConfigModel::DataItem::typeDisplay() const
|
||||
{
|
||||
switch (type) {
|
||||
case DataItem::BOOLEAN:
|
||||
return "BOOL";
|
||||
case DataItem::FILE:
|
||||
return "FILEPATH";
|
||||
case DataItem::DIRECTORY:
|
||||
return "PATH";
|
||||
case DataItem::STRING:
|
||||
return "STRING";
|
||||
case DataItem::UNKNOWN:
|
||||
break;
|
||||
}
|
||||
return "UNINITIALIZED";
|
||||
}
|
||||
|
||||
CMakeConfigItem ConfigModel::DataItem::toCMakeConfigItem() const
|
||||
{
|
||||
CMakeConfigItem cmi;
|
||||
cmi.key = key.toUtf8();
|
||||
cmi.value = value.toUtf8();
|
||||
switch (type) {
|
||||
case DataItem::BOOLEAN:
|
||||
cmi.type = CMakeConfigItem::BOOL;
|
||||
break;
|
||||
case DataItem::FILE:
|
||||
cmi.type = CMakeConfigItem::FILEPATH;
|
||||
break;
|
||||
case DataItem::DIRECTORY:
|
||||
cmi.type = CMakeConfigItem::PATH;
|
||||
break;
|
||||
case DataItem::STRING:
|
||||
cmi.type = CMakeConfigItem::STRING;
|
||||
break;
|
||||
case DataItem::UNKNOWN:
|
||||
cmi.type = CMakeConfigItem::UNINITIALIZED;
|
||||
break;
|
||||
}
|
||||
cmi.isUnset = isUnset;
|
||||
cmi.isAdvanced = isAdvanced;
|
||||
cmi.isInitial = isInitial;
|
||||
cmi.values = values;
|
||||
cmi.documentation = description.toUtf8();
|
||||
|
||||
return cmi;
|
||||
}
|
||||
|
||||
// ConfigModel
|
||||
|
||||
ConfigModel::ConfigModel(QObject *parent) : Utils::TreeModel<>(parent)
|
||||
{
|
||||
setHeader({tr("Key"), tr("Value")});
|
||||
}
|
||||
|
||||
ConfigModel::~ConfigModel() = default;
|
||||
|
||||
QVariant ConfigModel::data(const QModelIndex &idx, int role) const
|
||||
{
|
||||
// Hide/show groups according to "isAdvanced" setting:
|
||||
@@ -76,8 +167,6 @@ bool ConfigModel::setData(const QModelIndex &idx, const QVariant &data, int role
|
||||
return res;
|
||||
}
|
||||
|
||||
ConfigModel::~ConfigModel() = default;
|
||||
|
||||
void ConfigModel::appendConfiguration(const QString &key,
|
||||
const QString &value,
|
||||
const ConfigModel::DataItem::Type type, bool isInitial,
|
||||
@@ -454,7 +543,6 @@ QString ConfigModel::InternalDataItem::currentValue() const
|
||||
return isUserChanged ? newValue : value;
|
||||
}
|
||||
|
||||
namespace Internal {
|
||||
|
||||
ConfigModelTreeItem::~ConfigModelTreeItem() = default;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user