From d5326f37c0eb567bc943e3e99ca1b4445599b32b Mon Sep 17 00:00:00 2001 From: Kai Koehne <kai.koehne@nokia.com> Date: Wed, 3 Feb 2010 09:13:23 +0100 Subject: [PATCH] Pass library paths specified in .qmlproject file on to qmlviewer --- src/plugins/qmlprojectmanager/qmlproject.cpp | 20 +++++++++++++++++++- src/plugins/qmlprojectmanager/qmlproject.h | 1 + 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp index 40203453b3f..07a959531e6 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.cpp +++ b/src/plugins/qmlprojectmanager/qmlproject.cpp @@ -211,6 +211,14 @@ QStringList QmlProject::files() const return files; } +QStringList QmlProject::libraryPaths() const +{ + QStringList libraryPaths; + if (m_projectItem) + libraryPaths = m_projectItem.data()->libraryPaths(); + return libraryPaths; +} + void QmlProject::refreshProjectFile() { refresh(QmlProject::ProjectFile | Files); @@ -403,9 +411,18 @@ QStringList QmlRunConfiguration::viewerArguments() const { QStringList args; + // arguments in .user file if (!m_qmlViewerArgs.isEmpty()) args.append(m_qmlViewerArgs); + // arguments from .qmlproject file + if (qmlProject()) { + foreach (const QString &libraryPath, qmlProject()->libraryPaths()) { + args.append(QLatin1String("-L")); + args.append(libraryPath); + } + } + const QString s = mainScript(); if (! s.isEmpty()) args.append(s); @@ -642,7 +659,8 @@ void QmlRunControl::start() { m_applicationLauncher.start(ApplicationLauncher::Gui, m_executable, m_commandLineArguments); emit started(); - emit addToOutputWindow(this, tr("Starting %1...").arg(QDir::toNativeSeparators(m_executable))); + emit addToOutputWindow(this, tr("Starting %1 %2").arg(QDir::toNativeSeparators(m_executable), + m_commandLineArguments.join(QLatin1String(" ")))); } void QmlRunControl::stop() diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h index b1dd6852287..b229221f196 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.h +++ b/src/plugins/qmlprojectmanager/qmlproject.h @@ -186,6 +186,7 @@ public: QDir projectDir() const; QStringList files() const; + QStringList libraryPaths() const; private slots: void refreshProjectFile(); -- GitLab