summaryrefslogtreecommitdiff
path: root/src/plugins/qbsprojectmanager/qbsnodes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qbsprojectmanager/qbsnodes.cpp')
-rw-r--r--src/plugins/qbsprojectmanager/qbsnodes.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsnodes.cpp b/src/plugins/qbsprojectmanager/qbsnodes.cpp
index 9ceb32c033..a0c25b6182 100644
--- a/src/plugins/qbsprojectmanager/qbsnodes.cpp
+++ b/src/plugins/qbsprojectmanager/qbsnodes.cpp
@@ -30,6 +30,7 @@
#include "qbsprojectmanagerconstants.h"
#include "qbsrunconfiguration.h"
+#include <android/androidconstants.h>
#include <coreplugin/fileiconprovider.h>
#include <coreplugin/idocument.h>
#include <projectexplorer/projectexplorerconstants.h>
@@ -399,6 +400,54 @@ QString QbsProductNode::buildKey() const
return QbsProject::uniqueProductName(m_qbsProductData);
}
+QVariant QbsProductNode::data(Core::Id role) const
+{
+// if (role == Android::Constants::AndroidExtraLibs)
+// return value("ANDROID_EXTRA_LIBS");
+
+ if (role == Android::Constants::AndroidDeploySettingsFile) {
+ for (const auto &artifact : m_qbsProductData.generatedArtifacts()) {
+ if (artifact.fileTags().contains("qt_androiddeployqt_input"))
+ return artifact.filePath();
+ }
+ return {};
+ }
+
+ if (role == Android::Constants::AndroidSoLibPath) {
+ QStringList ret{m_qbsProductData.buildDirectory()};
+ for (const auto &artifact : m_qbsProductData.generatedArtifacts()) {
+ if (artifact.fileTags().contains("dynamiclibrary")) {
+ ret << QFileInfo(artifact.filePath()).path();
+ qDebug() << artifact.properties().toString();
+ }
+ }
+ ret.removeDuplicates();
+ qDebug() << ret;
+ return ret;
+ }
+
+ if (role == Android::Constants::AndroidManifest) {
+ for (const auto &artifact : m_qbsProductData.generatedArtifacts()) {
+ if (artifact.fileTags().contains("android.manifest_final"))
+ return artifact.filePath();
+ }
+ return {};
+ }
+
+ if (role == Android::Constants::AndroidApk) {
+// qDebug() << m_qbsProductData.name() << m_qbsProductData.targetExecutable() << m_qbsProductData.properties();
+// for (const auto &artifact : m_qbsProductData.installableArtifacts()) {
+// qDebug() << artifact.fileTags() << artifact.filePath();
+// }
+// for (const auto &artifact : m_qbsProductData.generatedArtifacts()) {
+// qDebug() << artifact.fileTags() << artifact.filePath();
+// }
+ return m_qbsProductData.targetExecutable();
+ }
+
+ return {};
+}
+
// --------------------------------------------------------------------
// QbsProjectNode:
// --------------------------------------------------------------------