From 824c6a5c568b8b3a52e203d96622846f4132b827 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Fri, 26 Jul 2013 17:28:06 +0200 Subject: [PATCH] QbsProjectManager: Support the "plain C" and "plain C++" wizards. Change-Id: Idcc8459660526f972949a6f6908acc19bd52a4f7 Reviewed-by: Joerg Bornemann Reviewed-by: Tobias Hunger --- .../wizards/plaincapp/qbs/project.qbs | 6 +++ .../wizards/plaincapp/qbs/wizard.xml | 42 +++++++++++++++++++ .../wizards/plaincppapp/qbs/project.qbs | 6 +++ .../wizards/plaincppapp/qbs/wizard.xml | 42 +++++++++++++++++++ .../qbsprojectmanagerplugin.cpp | 13 ++++++ 5 files changed, 109 insertions(+) create mode 100644 share/qtcreator/templates/wizards/plaincapp/qbs/project.qbs create mode 100644 share/qtcreator/templates/wizards/plaincapp/qbs/wizard.xml create mode 100644 share/qtcreator/templates/wizards/plaincppapp/qbs/project.qbs create mode 100644 share/qtcreator/templates/wizards/plaincppapp/qbs/wizard.xml diff --git a/share/qtcreator/templates/wizards/plaincapp/qbs/project.qbs b/share/qtcreator/templates/wizards/plaincapp/qbs/project.qbs new file mode 100644 index 00000000000..eb6dc608ac3 --- /dev/null +++ b/share/qtcreator/templates/wizards/plaincapp/qbs/project.qbs @@ -0,0 +1,6 @@ +import qbs + +CppApplication { + type: "application" // To suppress bundle generation on Mac + files: "main.c" +} diff --git a/share/qtcreator/templates/wizards/plaincapp/qbs/wizard.xml b/share/qtcreator/templates/wizards/plaincapp/qbs/wizard.xml new file mode 100644 index 00000000000..95a44930c87 --- /dev/null +++ b/share/qtcreator/templates/wizards/plaincapp/qbs/wizard.xml @@ -0,0 +1,42 @@ + + + + ../common/console.png + Creates a plain C project using qbs. + Plain C Project (Qbs Build); + Non-Qt Project + + + + + diff --git a/share/qtcreator/templates/wizards/plaincppapp/qbs/project.qbs b/share/qtcreator/templates/wizards/plaincppapp/qbs/project.qbs new file mode 100644 index 00000000000..866d3e27495 --- /dev/null +++ b/share/qtcreator/templates/wizards/plaincppapp/qbs/project.qbs @@ -0,0 +1,6 @@ +import qbs + +CppApplication { + type: "application" // To suppress bundle generation on Mac + files: "main.cpp" +} diff --git a/share/qtcreator/templates/wizards/plaincppapp/qbs/wizard.xml b/share/qtcreator/templates/wizards/plaincppapp/qbs/wizard.xml new file mode 100644 index 00000000000..e1fb3c338d4 --- /dev/null +++ b/share/qtcreator/templates/wizards/plaincppapp/qbs/wizard.xml @@ -0,0 +1,42 @@ + + + + ../common/console.png + Creates a plain (non-Qt) C++ project using qbs. + Plain C++ Project (Qbs Build); + Non-Qt Project + + + + + diff --git a/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp b/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp index 686fb73a21b..bb32ff93379 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp +++ b/src/plugins/qbsprojectmanager/qbsprojectmanagerplugin.cpp @@ -45,6 +45,7 @@ #include #include #include +#include #include #include #include @@ -62,6 +63,17 @@ namespace QbsProjectManager { namespace Internal { +class QbsFeatureProvider : public Core::IFeatureProvider +{ + Core::FeatureSet availableFeatures(const QString & /* platform */) const { + return Core::FeatureSet(Core::Id("Qbs.QbsSupport")); + } + + QStringList availablePlatforms() const { return QStringList(); } + QString displayNameForPlatform(const QString & /* platform */) const { return QString(); } +}; + + QbsProjectManagerPlugin::QbsProjectManagerPlugin() : m_manager(0), m_projectExplorer(0), @@ -92,6 +104,7 @@ bool QbsProjectManagerPlugin::initialize(const QStringList &arguments, QString * addAutoReleasedObject(new QbsInstallStepFactory); addAutoReleasedObject(new QbsDeployConfigurationFactory); addAutoReleasedObject(new QbsRunConfigurationFactory); + addAutoReleasedObject(new QbsFeatureProvider); //menus // Build Menu: