Adds validate kit to toolchain

Change-Id: I5f10509698a8badafeee2295a16e3c2eb9b20fa7
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
Michal Klocek
2013-03-21 12:27:18 +01:00
parent 2cea4c6f80
commit 03398ff8cf
3 changed files with 18 additions and 2 deletions

View File

@@ -162,9 +162,13 @@ QVariant ToolChainKitInformation::defaultValue(Kit *k) const
QList<Task> ToolChainKitInformation::validate(const Kit *k) const QList<Task> ToolChainKitInformation::validate(const Kit *k) const
{ {
QList<Task> result; QList<Task> result;
if (!toolChain(k)) {
const ToolChain* toolchain = toolChain(k);
if (!toolchain) {
result << Task(Task::Error, ToolChainKitInformation::msgNoToolChainInTarget(), result << Task(Task::Error, ToolChainKitInformation::msgNoToolChainInTarget(),
Utils::FileName(), -1, Core::Id(Constants::TASK_CATEGORY_BUILDSYSTEM)); Utils::FileName(), -1, Core::Id(Constants::TASK_CATEGORY_BUILDSYSTEM));
} else {
result << toolchain->validateKit(k);
} }
return result; return result;
} }

View File

@@ -31,6 +31,7 @@
#include "abi.h" #include "abi.h"
#include "toolchainmanager.h" #include "toolchainmanager.h"
#include "task.h"
#include <extensionsystem/pluginmanager.h> #include <extensionsystem/pluginmanager.h>
#include <utils/environment.h> #include <utils/environment.h>
@@ -190,6 +191,15 @@ bool ToolChain::fromMap(const QVariantMap &data)
return true; return true;
} }
/*!
\brief Used by the toolchainkitinformation to validate the kit.
*/
QList<Task> ToolChain::validateKit(const Kit */*k*/) const
{
return QList<Task>();
}
/*! /*!
\class ProjectExplorer::ToolChainFactory \class ProjectExplorer::ToolChainFactory
\brief Creates toolchains from settings or autodetects them. \brief Creates toolchains from settings or autodetects them.

View File

@@ -55,6 +55,8 @@ class IOutputParser;
class ToolChainConfigWidget; class ToolChainConfigWidget;
class ToolChainFactory; class ToolChainFactory;
class ToolChainManager; class ToolChainManager;
class Task;
class Kit;
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// ToolChain (documentation inside) // ToolChain (documentation inside)
@@ -104,7 +106,7 @@ public:
// Used by the toolchainmanager to save user-generated tool chains. // Used by the toolchainmanager to save user-generated tool chains.
// Make sure to call this method when deriving! // Make sure to call this method when deriving!
virtual QVariantMap toMap() const; virtual QVariantMap toMap() const;
virtual QList<Task> validateKit(const Kit *k) const;
protected: protected:
ToolChain(const QString &id, bool autoDetect); ToolChain(const QString &id, bool autoDetect);
explicit ToolChain(const ToolChain &); explicit ToolChain(const ToolChain &);