forked from qt-creator/qt-creator
BareMetal: Hide IarToolChain definitions
Not needed publicly. Change-Id: Id8250f32c64dbb53434082ae1d885b47f8a8d666 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
@@ -10,6 +10,7 @@
|
|||||||
#include <projectexplorer/abiwidget.h>
|
#include <projectexplorer/abiwidget.h>
|
||||||
#include <projectexplorer/projectexplorerconstants.h>
|
#include <projectexplorer/projectexplorerconstants.h>
|
||||||
#include <projectexplorer/projectmacro.h>
|
#include <projectexplorer/projectmacro.h>
|
||||||
|
#include <projectexplorer/toolchainconfigwidget.h>
|
||||||
#include <projectexplorer/toolchainmanager.h>
|
#include <projectexplorer/toolchainmanager.h>
|
||||||
|
|
||||||
#include <utils/algorithm.h>
|
#include <utils/algorithm.h>
|
||||||
@@ -262,16 +263,71 @@ static QString buildDisplayName(Abi::Architecture arch, Utils::Id language,
|
|||||||
return Tr::tr("IAREW %1 (%2, %3)").arg(version, langName, archName);
|
return Tr::tr("IAREW %1 (%2, %3)").arg(version, langName, archName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// IarToolChainConfigWidget
|
||||||
|
|
||||||
|
class IarToolChain;
|
||||||
|
|
||||||
|
class IarToolChainConfigWidget final : public ToolChainConfigWidget
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit IarToolChainConfigWidget(IarToolChain *tc);
|
||||||
|
|
||||||
|
private:
|
||||||
|
void applyImpl() final;
|
||||||
|
void discardImpl() final { setFromToolchain(); }
|
||||||
|
bool isDirtyImpl() const final;
|
||||||
|
void makeReadOnlyImpl() final;
|
||||||
|
|
||||||
|
void setFromToolchain();
|
||||||
|
void handleCompilerCommandChange();
|
||||||
|
void handlePlatformCodeGenFlagsChange();
|
||||||
|
|
||||||
|
PathChooser *m_compilerCommand = nullptr;
|
||||||
|
AbiWidget *m_abiWidget = nullptr;
|
||||||
|
QLineEdit *m_platformCodeGenFlagsLineEdit = nullptr;
|
||||||
|
Macros m_macros;
|
||||||
|
};
|
||||||
|
|
||||||
// IarToolChain
|
// IarToolChain
|
||||||
|
|
||||||
IarToolChain::IarToolChain() :
|
class IarToolChain final : public ToolChain
|
||||||
ToolChain(Constants::IAREW_TOOLCHAIN_TYPEID)
|
{
|
||||||
|
public:
|
||||||
|
IarToolChain() : ToolChain(Constants::IAREW_TOOLCHAIN_TYPEID)
|
||||||
{
|
{
|
||||||
setTypeDisplayName(Tr::tr("IAREW"));
|
setTypeDisplayName(Tr::tr("IAREW"));
|
||||||
setTargetAbiKey("TargetAbi");
|
setTargetAbiKey("TargetAbi");
|
||||||
setCompilerCommandKey("CompilerPath");
|
setCompilerCommandKey("CompilerPath");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MacroInspectionRunner createMacroInspectionRunner() const final;
|
||||||
|
|
||||||
|
LanguageExtensions languageExtensions(const QStringList &cxxflags) const final;
|
||||||
|
WarningFlags warningFlags(const QStringList &cxxflags) const final;
|
||||||
|
|
||||||
|
BuiltInHeaderPathsRunner createBuiltInHeaderPathsRunner(const Environment &) const final;
|
||||||
|
void addToEnvironment(Environment &env) const final;
|
||||||
|
QList<OutputLineParser *> createOutputParsers() const final;
|
||||||
|
|
||||||
|
QVariantMap toMap() const final;
|
||||||
|
bool fromMap(const QVariantMap &data) final;
|
||||||
|
|
||||||
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() final;
|
||||||
|
|
||||||
|
bool operator==(const ToolChain &other) const final;
|
||||||
|
|
||||||
|
void setExtraCodeModelFlags(const QStringList &flags);
|
||||||
|
QStringList extraCodeModelFlags() const final;
|
||||||
|
|
||||||
|
FilePath makeCommand(const Environment &env) const final;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QStringList m_extraCodeModelFlags;
|
||||||
|
|
||||||
|
friend class IarToolChainFactory;
|
||||||
|
friend class IarToolChainConfigWidget;
|
||||||
|
};
|
||||||
|
|
||||||
ToolChain::MacroInspectionRunner IarToolChain::createMacroInspectionRunner() const
|
ToolChain::MacroInspectionRunner IarToolChain::createMacroInspectionRunner() const
|
||||||
{
|
{
|
||||||
Environment env = Environment::systemEnvironment();
|
Environment env = Environment::systemEnvironment();
|
||||||
|
@@ -3,63 +3,10 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <projectexplorer/abi.h>
|
|
||||||
#include <projectexplorer/toolchain.h>
|
#include <projectexplorer/toolchain.h>
|
||||||
#include <projectexplorer/toolchainconfigwidget.h>
|
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
|
||||||
class QLineEdit;
|
|
||||||
class QPlainTextEdit;
|
|
||||||
class QPushButton;
|
|
||||||
class QTextEdit;
|
|
||||||
QT_END_NAMESPACE
|
|
||||||
|
|
||||||
namespace Utils {
|
|
||||||
class FilePath;
|
|
||||||
class PathChooser;
|
|
||||||
}
|
|
||||||
|
|
||||||
namespace ProjectExplorer { class AbiWidget; }
|
|
||||||
|
|
||||||
namespace BareMetal::Internal {
|
namespace BareMetal::Internal {
|
||||||
|
|
||||||
// IarToolChain
|
|
||||||
|
|
||||||
class IarToolChain final : public ProjectExplorer::ToolChain
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
MacroInspectionRunner createMacroInspectionRunner() const final;
|
|
||||||
|
|
||||||
Utils::LanguageExtensions languageExtensions(const QStringList &cxxflags) const final;
|
|
||||||
Utils::WarningFlags warningFlags(const QStringList &cxxflags) const final;
|
|
||||||
|
|
||||||
BuiltInHeaderPathsRunner createBuiltInHeaderPathsRunner(const Utils::Environment &) const final;
|
|
||||||
void addToEnvironment(Utils::Environment &env) const final;
|
|
||||||
QList<Utils::OutputLineParser *> createOutputParsers() const final;
|
|
||||||
|
|
||||||
QVariantMap toMap() const final;
|
|
||||||
bool fromMap(const QVariantMap &data) final;
|
|
||||||
|
|
||||||
std::unique_ptr<ProjectExplorer::ToolChainConfigWidget> createConfigurationWidget() final;
|
|
||||||
|
|
||||||
bool operator ==(const ToolChain &other) const final;
|
|
||||||
|
|
||||||
void setExtraCodeModelFlags(const QStringList &flags);
|
|
||||||
QStringList extraCodeModelFlags() const final;
|
|
||||||
|
|
||||||
Utils::FilePath makeCommand(const Utils::Environment &env) const final;
|
|
||||||
|
|
||||||
private:
|
|
||||||
IarToolChain();
|
|
||||||
|
|
||||||
QStringList m_extraCodeModelFlags;
|
|
||||||
|
|
||||||
friend class IarToolChainFactory;
|
|
||||||
friend class IarToolChainConfigWidget;
|
|
||||||
};
|
|
||||||
|
|
||||||
// IarToolChainFactory
|
|
||||||
|
|
||||||
class IarToolChainFactory final : public ProjectExplorer::ToolChainFactory
|
class IarToolChainFactory final : public ProjectExplorer::ToolChainFactory
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -77,29 +24,4 @@ private:
|
|||||||
const Candidate &candidate, Utils::Id languageId) const;
|
const Candidate &candidate, Utils::Id languageId) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
// IarToolChainConfigWidget
|
|
||||||
|
|
||||||
class IarToolChainConfigWidget final : public ProjectExplorer::ToolChainConfigWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
explicit IarToolChainConfigWidget(IarToolChain *tc);
|
|
||||||
|
|
||||||
private:
|
|
||||||
void applyImpl() final;
|
|
||||||
void discardImpl() final { setFromToolchain(); }
|
|
||||||
bool isDirtyImpl() const final;
|
|
||||||
void makeReadOnlyImpl() final;
|
|
||||||
|
|
||||||
void setFromToolchain();
|
|
||||||
void handleCompilerCommandChange();
|
|
||||||
void handlePlatformCodeGenFlagsChange();
|
|
||||||
|
|
||||||
Utils::PathChooser *m_compilerCommand = nullptr;
|
|
||||||
ProjectExplorer::AbiWidget *m_abiWidget = nullptr;
|
|
||||||
QLineEdit *m_platformCodeGenFlagsLineEdit = nullptr;
|
|
||||||
ProjectExplorer::Macros m_macros;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // BareMetal::Internal
|
} // BareMetal::Internal
|
||||||
|
Reference in New Issue
Block a user