summaryrefslogtreecommitdiff
path: root/src/plugins/qmlprojectmanager/fileformat
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2019-04-08 17:02:20 +0200
committerThomas Hartmann <thomas.hartmann@qt.io>2019-04-25 13:55:29 +0000
commitf8202239d6c43f7904b0fd1505006fc767c92f9a (patch)
treec3176dfe489bb73c458d8ab1abfb434d8b023d34 /src/plugins/qmlprojectmanager/fileformat
parentba73d97852f919d5466b086a5836dcf15cb9c933 (diff)
downloadqt-creator-f8202239d6c43f7904b0fd1505006fc767c92f9a.tar.gz
QmlProject: Implement basic support for QmlFileSelector
This patch adds support for QmlFileSelector for QmlProject and Qt Quick Designer. Task-number: QDS-590 Change-Id: I0cc043d3ec9578008ec879b36fe834b70fb8c5ad Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/plugins/qmlprojectmanager/fileformat')
-rw-r--r--src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp4
-rw-r--r--src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp6
-rw-r--r--src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h4
3 files changed, 14 insertions, 0 deletions
diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp b/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp
index 9947f2f7d5..198aa05da7 100644
--- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp
+++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp
@@ -88,6 +88,10 @@ QmlProjectItem *QmlProjectFileFormat::parseProjectFile(const Utils::FileName &fi
if (importPathsProperty.isValid())
projectItem->setImportPaths(importPathsProperty.toStringList());
+ const QVariant fileSelectorsProperty = rootNode->property(QLatin1String("fileSelectors"));
+ if (fileSelectorsProperty.isValid())
+ projectItem->setFileSelectors(fileSelectorsProperty.toStringList());
+
const QVariant targetDirectoryPropery = rootNode->property("targetDirectory");
if (targetDirectoryPropery.isValid())
projectItem->setTargetDirectory(targetDirectoryPropery.toString());
diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp
index 514a5bdff3..e82e90fedc 100644
--- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp
+++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.cpp
@@ -59,6 +59,12 @@ void QmlProjectItem::setImportPaths(const QStringList &importPaths)
m_importPaths = importPaths;
}
+void QmlProjectItem::setFileSelectors(const QStringList &selectors)
+{
+ if (m_fileSelectors != selectors)
+ m_fileSelectors = selectors;
+}
+
/* Returns list of absolute paths */
QStringList QmlProjectItem::files() const
{
diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h
index 086b34a7b8..4ba9afcd5f 100644
--- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h
+++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectitem.h
@@ -54,6 +54,9 @@ public:
QStringList importPaths() const { return m_importPaths; }
void setImportPaths(const QStringList &paths);
+ QStringList fileSelectors() const { return m_fileSelectors; }
+ void setFileSelectors(const QStringList &selectors);
+
QStringList files() const;
bool matchesFile(const QString &filePath) const;
@@ -72,6 +75,7 @@ protected:
QString m_sourceDirectory;
QString m_targetDirectory;
QStringList m_importPaths;
+ QStringList m_fileSelectors;
QString m_mainFile;
QList<Utils::EnvironmentItem> m_environment;
QList<QmlProjectContentItem *> m_content; // content property