diff options
author | hjk <hjk@qt.io> | 2020-01-09 17:32:51 +0100 |
---|---|---|
committer | hjk <hjk@qt.io> | 2020-01-10 12:46:38 +0000 |
commit | 1eaf44a270dbc8ed3fb6aab24c7d267510acfd84 (patch) | |
tree | 60136b971fe2705d7008007965a0e0ed086e4468 /src/plugins/qbsprojectmanager | |
parent | 675c414b0799f6bed356d77f9f114578b19bfea7 (diff) |
ProjectExplorer: De-QObject-ify BuildConfigurationFactories
The QObject was not heavily used. Object name was for debugging only,
translation context can be taken from the corresponding BuildConfiguration
objects, the qobject_casts in the three big importers are replaced by
dynamic_cast, which is good enough in that context.
Take the opportunity to re-use translations from base BuildConfiguration
for the common cases and sprinkle in some 'final'.
Change-Id: I8e9727c98c6e943cb333556861c24e701c2bdf45
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/qbsprojectmanager')
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp | 16 | ||||
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsbuildconfiguration.h | 4 | ||||
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsprojectimporter.cpp | 2 |
3 files changed, 9 insertions, 13 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp b/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp index 0fedc5e88d9..02c306c15e4 100644 --- a/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp +++ b/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp @@ -430,20 +430,18 @@ QbsBuildConfigurationFactory::QbsBuildConfigurationFactory() BuildInfo info = createBuildInfo(k, BuildConfiguration::Debug); //: The name of the debug build configuration created by default for a qbs project. - info.displayName = tr("Debug"); + info.displayName = BuildConfiguration::tr("Debug"); //: Non-ASCII characters in directory suffix may cause build issues. - info.buildDirectory - = defaultBuildDirectory(projectPath, k, tr("Debug", "Shadow build directory suffix"), - info.buildType); + const QString dbg = QbsBuildConfiguration::tr("Debug", "Shadow build directory suffix"); + info.buildDirectory = defaultBuildDirectory(projectPath, k, dbg, info.buildType); result << info; info = createBuildInfo(k, BuildConfiguration::Release); //: The name of the release build configuration created by default for a qbs project. - info.displayName = tr("Release"); + info.displayName = BuildConfiguration::tr("Release"); //: Non-ASCII characters in directory suffix may cause build issues. - info.buildDirectory - = defaultBuildDirectory(projectPath, k, tr("Release", "Shadow build directory suffix"), - info.buildType); + const QString rel = QbsBuildConfiguration::tr("Release", "Shadow build directory suffix"); + info.buildDirectory = defaultBuildDirectory(projectPath, k, rel, info.buildType); result << info; } else { @@ -462,7 +460,7 @@ BuildInfo QbsBuildConfigurationFactory::createBuildInfo(const Kit *k, BuildInfo info(this); info.kitId = k->id(); info.buildType = type; - info.typeName = tr("Build"); + info.typeName = BuildConfiguration::tr("Build"); QVariantMap config; config.insert("configName", type == BuildConfiguration::Debug ? "Debug" : "Release"); info.extraInfo = config; diff --git a/src/plugins/qbsprojectmanager/qbsbuildconfiguration.h b/src/plugins/qbsprojectmanager/qbsbuildconfiguration.h index cd303ab52e7..c540acff73f 100644 --- a/src/plugins/qbsprojectmanager/qbsbuildconfiguration.h +++ b/src/plugins/qbsprojectmanager/qbsbuildconfiguration.h @@ -95,10 +95,8 @@ private: QbsBuildSystem *m_buildSystem = nullptr; }; -class QbsBuildConfigurationFactory : public ProjectExplorer::BuildConfigurationFactory +class QbsBuildConfigurationFactory final : public ProjectExplorer::BuildConfigurationFactory { - Q_OBJECT - public: QbsBuildConfigurationFactory(); diff --git a/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp b/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp index 9e30a86cada..01acfec13ee 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp +++ b/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp @@ -221,7 +221,7 @@ Kit *QbsProjectImporter::createKit(void *directoryData) const const QList<BuildInfo> QbsProjectImporter::buildInfoListForKit(const Kit *k, void *directoryData) const { qCDebug(qbsPmLog) << "creating build info for kit" << k->displayName(); - const auto factory = qobject_cast<QbsBuildConfigurationFactory *>( + const auto factory = dynamic_cast<QbsBuildConfigurationFactory *>( BuildConfigurationFactory::find(k, projectFilePath())); if (!factory) { qCDebug(qbsPmLog) << "no build config factory found"; |