OSDN Git Service

QtQuickApplication wizard: Don't show Harmattan targets for symbian components
authorKai Koehne <kai.koehne@nokia.com>
Fri, 24 Jun 2011 09:25:18 +0000 (11:25 +0200)
committerAlessandro Portale <alessandro.portale@nokia.com>
Fri, 24 Jun 2011 13:33:33 +0000 (15:33 +0200)
Change-Id: Ia5108c04d7898567ece7b5498359c88210ed2682
Reviewed-on: http://codereview.qt.nokia.com/695
Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
src/plugins/qt4projectmanager/qt-desktop/qt4desktoptargetfactory.cpp
src/plugins/qt4projectmanager/qt-desktop/qt4simulatortargetfactory.cpp
src/plugins/qt4projectmanager/qt-s60/qt4symbiantargetfactory.cpp
src/plugins/qt4projectmanager/qt4projectmanagerconstants.h
src/plugins/qt4projectmanager/wizards/qtquickappwizard.cpp

index c708daa..b27b101 100644 (file)
@@ -158,8 +158,12 @@ ProjectExplorer::Target *Qt4DesktopTargetFactory::create(ProjectExplorer::Projec
 
 QSet<QString> Qt4DesktopTargetFactory::targetFeatures(const QString & /*id*/) const
 {
-    return QSet<QString>() << Constants::DESKTOP_TARGETFEATURE_ID
-                           << Constants::SHADOWBUILD_TARGETFEATURE_ID;
+    QSet<QString> features;
+    features << Constants::DESKTOP_TARGETFEATURE_ID;
+    features << Constants::SHADOWBUILD_TARGETFEATURE_ID;
+    // how to check check whether they component set is really installed?
+    features << Constants::QTQUICKCOMPONENTS_SYMBIAN_TARGETFEATURE_ID;
+    return features;
 }
 
 ProjectExplorer::Target *Qt4DesktopTargetFactory::create(ProjectExplorer::Project *parent, const QString &id, const QList<BuildConfigurationInfo> &infos)
index fe51784..ae0ce9c 100644 (file)
@@ -125,8 +125,13 @@ ProjectExplorer::Target *Qt4SimulatorTargetFactory::restore(ProjectExplorer::Pro
 
 QSet<QString> Qt4SimulatorTargetFactory::targetFeatures(const QString & /*id*/) const
 {
-    return QSet<QString>() << Constants::MOBILE_TARGETFEATURE_ID
-                           << Constants::SHADOWBUILD_TARGETFEATURE_ID;
+    QSet<QString> features;
+
+    features << Constants::MOBILE_TARGETFEATURE_ID;
+    features << Constants::SHADOWBUILD_TARGETFEATURE_ID;
+    // how to check check whether the component set is really installed?
+    features << Constants::QTQUICKCOMPONENTS_SYMBIAN_TARGETFEATURE_ID;
+    return features;
 }
 
 ProjectExplorer::Target *Qt4SimulatorTargetFactory::create(ProjectExplorer::Project *parent, const QString &id)
index 5e86f24..bb2dca5 100644 (file)
@@ -177,7 +177,11 @@ QList<BuildConfigurationInfo> Qt4SymbianTargetFactory::availableBuildConfigurati
 
 QSet<QString> Qt4SymbianTargetFactory::targetFeatures(const QString & /*id*/) const
 {
-    return QSet<QString>() << Constants::MOBILE_TARGETFEATURE_ID;
+    QSet<QString> features;
+    features << Constants::MOBILE_TARGETFEATURE_ID;
+    // ideally we should check whether they're really installed
+    features << Constants::QTQUICKCOMPONENTS_SYMBIAN_TARGETFEATURE_ID;
+    return features;
 }
 
 ProjectExplorer::Target *Qt4SymbianTargetFactory::create(ProjectExplorer::Project *parent, const QString &id)
index 23ae39e..5562ebb 100644 (file)
@@ -96,6 +96,9 @@ const char * const QT_SIMULATOR_TARGET_ID = "Qt4ProjectManager.Target.QtSimulato
 const char * const MOBILE_TARGETFEATURE_ID = "Qt4ProjectManager.TargetFeature.Mobile";
 const char * const DESKTOP_TARGETFEATURE_ID = "Qt4ProjectManager.TargetFeature.Desktop";
 const char * const SHADOWBUILD_TARGETFEATURE_ID = "Qt4ProjectManager.TargetFeature.ShadowBuild";
+const char * const QTQUICKCOMPONENTS_SYMBIAN_TARGETFEATURE_ID
+                               = "Qt4ProjectManager.TargetFeature.QtQuickComponentsSymbian";
+
 
 // Tool chains:
 const char * const GCCE_TOOLCHAIN_ID = "Qt4ProjectManager.ToolChain.GCCE";
index 74f8d2f..4102c67 100644 (file)
@@ -92,6 +92,9 @@ bool QtQuickAppWizardDialog::validateCurrentPage()
         if (m_componentOptionsPage->componentSet() == QtQuickApp::Symbian10Components) {
             setIgnoreGenericOptionsPage(true);
             targetsPage()->setMinimumQtVersion(QtSupport::QtVersionNumber(4, 7, 3));
+            QSet<QString> requiredFeatures;
+            requiredFeatures << Constants::QTQUICKCOMPONENTS_SYMBIAN_TARGETFEATURE_ID;
+            targetsPage()->setRequiredFeatures(requiredFeatures);
         } else if (m_componentOptionsPage->componentSet() == QtQuickApp::QtQuick11Components) {
             targetsPage()->setMinimumQtVersion(QtSupport::QtVersionNumber(4, 7, 4));
         }