diff options
author | Kai Koehne <kai.koehne@digia.com> | 2013-01-21 13:54:20 +0100 |
---|---|---|
committer | Kai Koehne <kai.koehne@digia.com> | 2013-01-21 15:20:37 +0100 |
commit | a1ef043bfbfa0e24c73fb77addac361fa9d2913e (patch) | |
tree | 94a592d3770e7a3cd8b423bad37cd342bf79c854 /src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp | |
parent | 459d471c2f9ddc9c4023c8396866e168f2a9e2ba (diff) | |
download | qt-creator-a1ef043bfbfa0e24c73fb77addac361fa9d2913e.tar.gz |
QmlProject: Detect import type from mainFile
Detect the default import (QtQuick 1.x vs QtQuick 2.x) from main
file, and use it to restrict kits + select the right runtime.
Task-number: QTCREATORBUG-8358
Change-Id: Ib8cfd3eb989953f607fee6043c43e588f798c774
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Diffstat (limited to 'src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp')
-rw-r--r-- | src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp index 03b76bfe1e..2efde35b5b 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfigurationfactory.cpp @@ -59,12 +59,26 @@ QList<Core::Id> QmlProjectRunConfigurationFactory::availableCreationIds(ProjectE QtSupport::BaseQtVersion *version = QtSupport::QtKitInformation::qtVersion(parent->kit()); - // put qmlscene first (so that it is the default) for Qt 5.0.0 + // First id will be the default run configuration QList<Core::Id> list; - if (version && version->qtVersion() >= QtSupport::QtVersionNumber(5, 0, 0)) - list << Core::Id(Constants::QML_SCENE_RC_ID); - - list << Core::Id(Constants::QML_VIEWER_RC_ID); + if (version && version->qtVersion() >= QtSupport::QtVersionNumber(5, 0, 0)) { + QmlProject *project = static_cast<QmlProject*>(parent->project()); + switch (project->defaultImport()) { + case QmlProject::QtQuick1Import: + list << Core::Id(Constants::QML_VIEWER_RC_ID); + break; + case QmlProject::QtQuick2Import: + list << Core::Id(Constants::QML_SCENE_RC_ID); + break; + case QmlProject::UnknownImport: + default: + list << Core::Id(Constants::QML_SCENE_RC_ID); + list << Core::Id(Constants::QML_VIEWER_RC_ID); + break; + } + } else { + list << Core::Id(Constants::QML_VIEWER_RC_ID); + } return list; } |