forked from qt-creator/qt-creator
ProjectExplorer: Inline Project::restoreTarget()
... into its only internal user. Change-Id: I3f2d1a3af757036cc2194967a71ad0d48ed05d9a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -536,28 +536,6 @@ void Project::handleSubTreeChanged(FolderNode *node)
|
|||||||
emit fileListChanged();
|
emit fileListChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<Target> Project::restoreTarget(const QVariantMap &data)
|
|
||||||
{
|
|
||||||
Core::Id id = idFromMap(data);
|
|
||||||
if (target(id)) {
|
|
||||||
qWarning("Warning: Duplicated target id found, not restoring second target with id '%s'. Continuing.",
|
|
||||||
qPrintable(id.toString()));
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
Kit *k = KitManager::kit(id);
|
|
||||||
if (!k) {
|
|
||||||
qWarning("Warning: No kit '%s' found. Continuing.", qPrintable(id.toString()));
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
auto t = std::make_unique<Target>(this, k, Target::_constructor_tag{});
|
|
||||||
if (!t->fromMap(data))
|
|
||||||
return {};
|
|
||||||
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
|
|
||||||
void Project::saveSettings()
|
void Project::saveSettings()
|
||||||
{
|
{
|
||||||
emit aboutToSaveSettings();
|
emit aboutToSaveSettings();
|
||||||
@@ -730,10 +708,27 @@ void Project::createTargetFromMap(const QVariantMap &map, int index)
|
|||||||
const QString key = QString::fromLatin1(TARGET_KEY_PREFIX) + QString::number(index);
|
const QString key = QString::fromLatin1(TARGET_KEY_PREFIX) + QString::number(index);
|
||||||
if (!map.contains(key))
|
if (!map.contains(key))
|
||||||
return;
|
return;
|
||||||
QVariantMap targetMap = map.value(key).toMap();
|
|
||||||
|
|
||||||
std::unique_ptr<Target> t = restoreTarget(targetMap);
|
const QVariantMap targetMap = map.value(key).toMap();
|
||||||
if (!t || (t->runConfigurations().isEmpty() && t->buildConfigurations().isEmpty()))
|
|
||||||
|
Core::Id id = idFromMap(targetMap);
|
||||||
|
if (target(id)) {
|
||||||
|
qWarning("Warning: Duplicated target id found, not restoring second target with id '%s'. Continuing.",
|
||||||
|
qPrintable(id.toString()));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Kit *k = KitManager::kit(id);
|
||||||
|
if (!k) {
|
||||||
|
qWarning("Warning: No kit '%s' found. Continuing.", qPrintable(id.toString()));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
auto t = std::make_unique<Target>(this, k, Target::_constructor_tag{});
|
||||||
|
if (!t->fromMap(targetMap))
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (t->runConfigurations().isEmpty() && t->buildConfigurations().isEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
addTarget(std::move(t));
|
addTarget(std::move(t));
|
||||||
|
@@ -134,7 +134,6 @@ public:
|
|||||||
|
|
||||||
std::unique_ptr<Target> createTarget(Kit *k);
|
std::unique_ptr<Target> createTarget(Kit *k);
|
||||||
static bool copySteps(Target *sourceTarget, Target *newTarget);
|
static bool copySteps(Target *sourceTarget, Target *newTarget);
|
||||||
std::unique_ptr<Target> restoreTarget(const QVariantMap &data);
|
|
||||||
|
|
||||||
void saveSettings();
|
void saveSettings();
|
||||||
enum class RestoreResult { Ok, Error, UserAbort };
|
enum class RestoreResult { Ok, Error, UserAbort };
|
||||||
|
Reference in New Issue
Block a user