aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlprojectmanager
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2020-02-20 14:51:45 +0100
committerThomas Hartmann <thomas.hartmann@qt.io>2020-02-21 14:02:23 +0000
commitc74a3042d449e9637ddf2f236492693bc6e966bb (patch)
treed75809e5863075ebd123d8a58618d9049b9efd81 /src/plugins/qmlprojectmanager
parent21ab7e59d732b87fe470b91be12f8cc124b7b38d (diff)
QmlProject: Add qtForMCU flag
Change-Id: Ia473fd257414f5edddc0ffcce8c913897d75f351 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Diffstat (limited to 'src/plugins/qmlprojectmanager')
-rw-r--r--src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp4
-rw-r--r--src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp5
-rw-r--r--src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h4
-rw-r--r--src/plugins/qmlprojectmanager/qmlproject.cpp9
-rw-r--r--src/plugins/qmlprojectmanager/qmlproject.h1
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectconstants.h1
6 files changed, 24 insertions, 0 deletions
diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp b/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp
index f62c7c1294..1ad4bb0590 100644
--- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp
+++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp
@@ -101,6 +101,10 @@ QmlProjectItem *QmlProjectFileFormat::parseProjectFile(const Utils::FilePath &fi
if (targetDirectoryPropery.isValid())
projectItem->setTargetDirectory(targetDirectoryPropery.toString());
+ const QVariant qtForMCUProperty = rootNode->property("qtForMCUs");
+ if (qtForMCUProperty.isValid() && qtForMCUProperty.toBool())
+ projectItem->setQtForMCUs(targetDirectoryPropery.toBool());
+
if (debug)
qDebug() << "importPath:" << importPathsProperty << "mainFile:" << mainFileProperty;
diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp
index b36938b9f2..34f0591b17 100644
--- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp
+++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp
@@ -55,6 +55,11 @@ void QmlProjectItem::setTargetDirectory(const QString &directoryPath)
m_targetDirectory = directoryPath;
}
+void QmlProjectItem::setQtForMCUs(bool b)
+{
+ m_qtForMCUs = b;
+}
+
void QmlProjectItem::setImportPaths(const QStringList &importPaths)
{
if (m_importPaths != importPaths)
diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h
index 5245e3872c..68dfe6d55d 100644
--- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h
+++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h
@@ -51,6 +51,9 @@ public:
QString targetDirectory() const { return m_targetDirectory; }
void setTargetDirectory(const QString &directoryPath);
+ bool qtForMCUs() const { return m_qtForMCUs; }
+ void setQtForMCUs(bool qtForMCUs);
+
QStringList importPaths() const { return m_importPaths; }
void setImportPaths(const QStringList &paths);
@@ -83,6 +86,7 @@ protected:
Utils::EnvironmentItems m_environment;
QVector<QmlProjectContentItem *> m_content; // content property
bool m_forceFreeType = false;
+ bool m_qtForMCUs = false;
};
} // namespace QmlProjectManager
diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp
index 6d93305e6d..fc622179ca 100644
--- a/src/plugins/qmlprojectmanager/qmlproject.cpp
+++ b/src/plugins/qmlprojectmanager/qmlproject.cpp
@@ -205,6 +205,13 @@ QString QmlBuildSystem::mainFile() const
return QString();
}
+bool QmlBuildSystem::qtForMCUs() const
+{
+ if (m_projectItem)
+ return m_projectItem.data()->qtForMCUs();
+ return false;
+}
+
void QmlBuildSystem::setMainFile(const QString &mainFilePath)
{
if (m_projectItem)
@@ -393,6 +400,8 @@ QVariant QmlBuildSystem::additionalData(Id id) const
return customFileSelectors();
if (id == Constants::customForceFreeTypeData)
return forceFreeType();
+ if (id == Constants::customQtForMCUs)
+ return qtForMCUs();
return {};
}
diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h
index b1b4c6bd53..0cff152898 100644
--- a/src/plugins/qmlprojectmanager/qmlproject.h
+++ b/src/plugins/qmlprojectmanager/qmlproject.h
@@ -76,6 +76,7 @@ public:
Utils::FilePath canonicalProjectDir() const;
QString mainFile() const;
+ bool qtForMCUs() const;
void setMainFile(const QString &mainFilePath);
Utils::FilePath targetDirectory() const;
Utils::FilePath targetFile(const Utils::FilePath &sourceFile) const;
diff --git a/src/plugins/qmlprojectmanager/qmlprojectconstants.h b/src/plugins/qmlprojectmanager/qmlprojectconstants.h
index ecf39bc32c..10d3bafc69 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectconstants.h
+++ b/src/plugins/qmlprojectmanager/qmlprojectconstants.h
@@ -33,6 +33,7 @@ namespace Constants {
const char * const QMLPROJECT_MIMETYPE = QmlJSTools::Constants::QMLPROJECT_MIMETYPE;
const char customFileSelectorsData[] = "CustomFileSelectorsData";
const char customForceFreeTypeData[] = "CustomForceFreeType";
+const char customQtForMCUs[] = "CustomQtForMCUs";
} // namespace Constants
} // namespace QmlProjectManager