diff --git a/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp b/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp index 89e4871fb47..347b230aa33 100644 --- a/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp +++ b/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp @@ -23,8 +23,7 @@ using namespace ProjectExplorer; using namespace Utils; -namespace QmakeProjectManager { -namespace Internal { +namespace QmakeProjectManager::Internal { class QmakeKitAspectImpl final : public KitAspect { @@ -64,49 +63,6 @@ private: Guard m_ignoreChanges; }; - -QmakeKitAspectFactory::QmakeKitAspectFactory() -{ - setObjectName(QLatin1String("QmakeKitAspect")); - setId(QmakeKitAspect::id()); - setDisplayName(Tr::tr("Qt mkspec")); - setDescription(Tr::tr("The mkspec to use when building the project with qmake.
" - "This setting is ignored when using other build systems.")); - setPriority(24000); -} - -Tasks QmakeKitAspectFactory::validate(const Kit *k) const -{ - Tasks result; - QtSupport::QtVersion *version = QtSupport::QtKitAspect::qtVersion(k); - - const QString mkspec = QmakeKitAspect::mkspec(k); - if (!version && !mkspec.isEmpty()) - result << BuildSystemTask(Task::Warning, Tr::tr("No Qt version set, so mkspec is ignored.")); - if (version && !version->hasMkspec(mkspec)) - result << BuildSystemTask(Task::Error, Tr::tr("Mkspec not found for Qt version.")); - - return result; -} - -KitAspect *QmakeKitAspectFactory::createKitAspect(Kit *k) const -{ - return new Internal::QmakeKitAspectImpl(k, this); -} - -KitAspectFactory::ItemList QmakeKitAspectFactory::toUserOutput(const Kit *k) const -{ - return {{Tr::tr("mkspec"), QDir::toNativeSeparators(QmakeKitAspect::mkspec(k))}}; -} - -void QmakeKitAspectFactory::addToMacroExpander(Kit *kit, MacroExpander *expander) const -{ - expander->registerVariable("Qmake:mkspec", Tr::tr("Mkspec configured for qmake by the kit."), - [kit]() -> QString { - return QDir::toNativeSeparators(QmakeKitAspect::mkspec(kit)); - }); -} - Id QmakeKitAspect::id() { return Constants::KIT_INFORMATION_ID; @@ -145,5 +101,54 @@ QString QmakeKitAspect::defaultMkspec(const Kit *k) return version->mkspecFor(ToolChainKitAspect::cxxToolChain(k)); } -} // namespace Internal -} // namespace QmakeProjectManager +// QmakeKitAspectFactory + +class QmakeKitAspectFactory : public KitAspectFactory +{ +public: + QmakeKitAspectFactory() + { + setObjectName(QLatin1String("QmakeKitAspect")); + setId(QmakeKitAspect::id()); + setDisplayName(Tr::tr("Qt mkspec")); + setDescription(Tr::tr("The mkspec to use when building the project with qmake.
" + "This setting is ignored when using other build systems.")); + setPriority(24000); + } + + Tasks validate(const Kit *k) const override + { + Tasks result; + QtSupport::QtVersion *version = QtSupport::QtKitAspect::qtVersion(k); + + const QString mkspec = QmakeKitAspect::mkspec(k); + if (!version && !mkspec.isEmpty()) + result << BuildSystemTask(Task::Warning, Tr::tr("No Qt version set, so mkspec is ignored.")); + if (version && !version->hasMkspec(mkspec)) + result << BuildSystemTask(Task::Error, Tr::tr("Mkspec not found for Qt version.")); + + return result; + } + + KitAspect *createKitAspect(Kit *k) const override + { + return new QmakeKitAspectImpl(k, this); + } + + ItemList toUserOutput(const Kit *k) const override + { + return {{Tr::tr("mkspec"), QDir::toNativeSeparators(QmakeKitAspect::mkspec(k))}}; + } + + void addToMacroExpander(Kit *kit, Utils::MacroExpander *expander) const override + { + expander->registerVariable("Qmake:mkspec", Tr::tr("Mkspec configured for qmake by the kit."), + [kit]() -> QString { + return QDir::toNativeSeparators(QmakeKitAspect::mkspec(kit)); + }); + } +}; + +const QmakeKitAspectFactory theQmakeKitAspectFactory; + +} // QmakeProjectManager::Internal diff --git a/src/plugins/qmakeprojectmanager/qmakekitinformation.h b/src/plugins/qmakeprojectmanager/qmakekitinformation.h index c40e8d01aa5..634facb6e3d 100644 --- a/src/plugins/qmakeprojectmanager/qmakekitinformation.h +++ b/src/plugins/qmakeprojectmanager/qmakekitinformation.h @@ -5,8 +5,7 @@ #include -namespace QmakeProjectManager { -namespace Internal { +namespace QmakeProjectManager::Internal { class QmakeKitAspect { @@ -19,19 +18,4 @@ public: static QString defaultMkspec(const ProjectExplorer::Kit *k); }; -class QmakeKitAspectFactory : public ProjectExplorer::KitAspectFactory -{ -public: - QmakeKitAspectFactory(); - - ProjectExplorer::Tasks validate(const ProjectExplorer::Kit *k) const override; - - ProjectExplorer::KitAspect *createKitAspect(ProjectExplorer::Kit *k) const override; - - ItemList toUserOutput(const ProjectExplorer::Kit *k) const override; - - void addToMacroExpander(ProjectExplorer::Kit *kit, Utils::MacroExpander *expander) const override; -}; - -} // namespace Internal -} // namespace QmakeProjectManager +} // QmakeProjectManager::Internal diff --git a/src/plugins/qmakeprojectmanager/qmakeprojectmanagerplugin.cpp b/src/plugins/qmakeprojectmanager/qmakeprojectmanagerplugin.cpp index a9b2c7e591e..7e06ff6bbab 100644 --- a/src/plugins/qmakeprojectmanager/qmakeprojectmanagerplugin.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeprojectmanagerplugin.cpp @@ -7,7 +7,6 @@ #include "customwidgetwizard/customwidgetwizard.h" #include "profileeditor.h" #include "qmakebuildconfiguration.h" -#include "qmakekitinformation.h" #include "qmakemakestep.h" #include "qmakenodes.h" #include "qmakeproject.h" @@ -96,8 +95,6 @@ public: QAction *m_addLibraryAction = nullptr; QAction *m_addLibraryActionContextMenu = nullptr; - QmakeKitAspectFactory qmakeKitAspectFactory; - void addLibrary(); void addLibraryContextMenu(); void runQMake();