From 2ddb7f66a8cd0c1909cb3520e2ce54a780523f72 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Sat, 13 Jul 2024 12:38:23 +0200 Subject: [PATCH] PE: Add convenience function for retrieving a toolchain's factory Change-Id: I76839ea04576b5a2c6252c09dea7955883e7ad9a Reviewed-by: hjk --- src/plugins/projectexplorer/toolchain.cpp | 7 ++++++- src/plugins/projectexplorer/toolchain.h | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/plugins/projectexplorer/toolchain.cpp b/src/plugins/projectexplorer/toolchain.cpp index 0d7c353f222..c4147862a7d 100644 --- a/src/plugins/projectexplorer/toolchain.cpp +++ b/src/plugins/projectexplorer/toolchain.cpp @@ -167,6 +167,11 @@ QString Toolchain::detectionSource() const return d->m_detectionSource; } +ToolchainFactory *Toolchain::factory() const +{ + return ToolchainFactory::factoryForType(typeId()); +} + QByteArray Toolchain::id() const { return d->m_id; @@ -220,7 +225,7 @@ bool Toolchain::operator == (const Toolchain &tc) const Toolchain *Toolchain::clone() const { - if (ToolchainFactory *const f = ToolchainFactory::factoryForType(d->m_typeId)) { + if (ToolchainFactory * const f = factory()) { Toolchain *tc = f->create(); QTC_ASSERT(tc, return nullptr); Store data; diff --git a/src/plugins/projectexplorer/toolchain.h b/src/plugins/projectexplorer/toolchain.h index e547bf9665b..daf1c30afe3 100644 --- a/src/plugins/projectexplorer/toolchain.h +++ b/src/plugins/projectexplorer/toolchain.h @@ -42,6 +42,7 @@ QString languageId(Language l); class GccToolchain; class ToolchainConfigWidget; +class ToolchainFactory; class Kit; namespace Internal { class ToolchainSettingsAccessor; } @@ -78,6 +79,7 @@ public: bool isSdkProvided() const { return detection() == AutoDetectionFromSdk; } Detection detection() const; QString detectionSource() const; + ToolchainFactory *factory() const; QByteArray id() const;