forked from qt-creator/qt-creator
McuSupport: Reduce omnipotence of McuTarget's constructor
... add some setters for optional properties. Change-Id: I4e1814c36f8294af86bf30d8538f450bc7f70b2b Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -202,36 +202,48 @@ void McuPackage::updateStatus()
|
||||
}
|
||||
|
||||
McuTarget::McuTarget(const QString &vendor, const QString &model,
|
||||
const QString &toolChainFileName, const QString &qulPlatform,
|
||||
const QVector<McuPackage*> &packages)
|
||||
: m_vendor(vendor)
|
||||
, m_model(model)
|
||||
, m_toolChainFile(toolChainFileName)
|
||||
, m_qulPlatform(qulPlatform)
|
||||
, m_packages(packages)
|
||||
{
|
||||
}
|
||||
|
||||
QString McuTarget::vendor() const
|
||||
{
|
||||
return m_vendor;
|
||||
}
|
||||
|
||||
QString McuTarget::model() const
|
||||
{
|
||||
return m_model;
|
||||
}
|
||||
|
||||
QVector<McuPackage *> McuTarget::packages() const
|
||||
{
|
||||
return m_packages;
|
||||
}
|
||||
|
||||
void McuTarget::setToolChainFile(const QString &toolChainFile)
|
||||
{
|
||||
m_toolChainFile = toolChainFile;
|
||||
}
|
||||
|
||||
QString McuTarget::toolChainFile() const
|
||||
{
|
||||
return m_toolChainFile;
|
||||
}
|
||||
|
||||
void McuTarget::setQulPlatform(const QString &qulPlatform)
|
||||
{
|
||||
m_qulPlatform = qulPlatform;
|
||||
}
|
||||
|
||||
QString McuTarget::qulPlatform() const
|
||||
{
|
||||
return m_qulPlatform;
|
||||
}
|
||||
|
||||
QVector<McuPackage *> McuTarget::packages() const
|
||||
{
|
||||
return m_packages;
|
||||
}
|
||||
|
||||
bool McuTarget::isValid() const
|
||||
{
|
||||
return !Utils::anyOf(packages(), [](McuPackage *package) {
|
||||
@@ -239,11 +251,6 @@ bool McuTarget::isValid() const
|
||||
});
|
||||
}
|
||||
|
||||
QString McuTarget::vendor() const
|
||||
{
|
||||
return m_vendor;
|
||||
}
|
||||
|
||||
static McuPackage *createQtForMCUsPackage()
|
||||
{
|
||||
auto result = new McuPackage(
|
||||
@@ -377,38 +384,30 @@ McuSupportOptions::McuSupportOptions(QObject *parent)
|
||||
const QString vendorNxp = "NXP";
|
||||
const QString vendorQt = "Qt";
|
||||
|
||||
mcuTargets.append(new McuTarget(vendorStm,
|
||||
"stm32f7508",
|
||||
"CMake/stm32f7508-discovery.cmake",
|
||||
"",
|
||||
stmEvalPackages));
|
||||
mcuTargets.append(new McuTarget(vendorStm,
|
||||
"stm32f769i",
|
||||
"CMake/stm32f769i-discovery.cmake",
|
||||
"",
|
||||
stmEvalPackages));
|
||||
mcuTargets.append(new McuTarget(vendorStm,
|
||||
"Engineering",
|
||||
"CMake/<toolchain file>",
|
||||
"",
|
||||
stmEngPackages));
|
||||
// STM
|
||||
auto mcuTarget = new McuTarget(vendorStm, "stm32f7508", stmEvalPackages);
|
||||
mcuTarget->setToolChainFile("CMake/stm32f7508-discovery.cmake");
|
||||
mcuTargets.append(mcuTarget);
|
||||
|
||||
mcuTargets.append(new McuTarget(vendorNxp,
|
||||
"evkbimxrt1050",
|
||||
"CMake/evkbimxrt1050-toolchain.cmake",
|
||||
"",
|
||||
nxpEvalPackages));
|
||||
mcuTargets.append(new McuTarget(vendorNxp,
|
||||
"Engineering",
|
||||
"CMake/<toolchain file>",
|
||||
"",
|
||||
nxpEngPackages));
|
||||
mcuTarget = new McuTarget(vendorStm, "stm32f769i", stmEvalPackages);
|
||||
mcuTarget->setToolChainFile("CMake/stm32f769i-discovery.cmake");
|
||||
mcuTargets.append(mcuTarget);
|
||||
|
||||
mcuTargets.append(new McuTarget(vendorQt,
|
||||
"Desktop",
|
||||
"",
|
||||
"Qt",
|
||||
desktopPackages));
|
||||
mcuTarget = new McuTarget(vendorStm, "Engineering", stmEngPackages);
|
||||
mcuTargets.append(mcuTarget);
|
||||
|
||||
// NXP
|
||||
mcuTarget = new McuTarget(vendorNxp, "evkbimxrt1050", nxpEvalPackages);
|
||||
mcuTarget->setToolChainFile("CMake/evkbimxrt1050-toolchain.cmake");
|
||||
mcuTargets.append(mcuTarget);
|
||||
|
||||
mcuTarget = new McuTarget(vendorNxp, "Engineering", nxpEngPackages);
|
||||
mcuTargets.append(mcuTarget);
|
||||
|
||||
// Desktop
|
||||
mcuTarget = new McuTarget(vendorQt, "Desktop", desktopPackages);
|
||||
mcuTarget->setQulPlatform("Qt");
|
||||
mcuTargets.append(mcuTarget);
|
||||
|
||||
for (auto package : packages)
|
||||
connect(package, &McuPackage::changed, [this](){
|
||||
|
@@ -101,22 +101,23 @@ class McuTarget : public QObject
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
McuTarget(const QString &vendor, const QString &model, const QString &toolChainFile,
|
||||
const QString &qulPlatform, const QVector<McuPackage *> &packages);
|
||||
McuTarget(const QString &vendor, const QString &model, const QVector<McuPackage *> &packages);
|
||||
|
||||
QString vendor() const;
|
||||
QString model() const;
|
||||
QString toolChainFile() const;
|
||||
QString qulPlatform() const;
|
||||
QVector<McuPackage *> packages() const;
|
||||
void setToolChainFile(const QString &toolChainFile);
|
||||
QString toolChainFile() const;
|
||||
void setQulPlatform(const QString &qulPlatform);
|
||||
QString qulPlatform() const;
|
||||
bool isValid() const;
|
||||
|
||||
private:
|
||||
const QString m_vendor;
|
||||
const QString m_model;
|
||||
const QString m_toolChainFile;
|
||||
const QString m_qulPlatform;
|
||||
const QVector<McuPackage*> m_packages;
|
||||
QString m_toolChainFile;
|
||||
QString m_qulPlatform;
|
||||
};
|
||||
|
||||
class McuSupportOptions : public QObject
|
||||
|
Reference in New Issue
Block a user