Support for QML module mapping

QUL uses module mapping for theming of QtQuick.Controls: during
code-generation the compiler is pointed to the Controls implementation
it should use. This is done by rewriting any import of QtQuick.Controls
with the given module name. The CMake build scripts will write a file
for each target to the directory "qml_module_mappings" in the build dir,
and those files will contain the mappings used.

Fixes: QTCREATORBUG-25356
Change-Id: I3f74897836dde7717b03bd6dffa46dcc0689ffdd
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@qt.io>
This commit is contained in:
Erik Verbruggen
2021-03-17 11:38:33 +01:00
committed by Erik Verbruggen
parent 98dc428c69
commit 5ad724a3ac
17 changed files with 201 additions and 7 deletions

View File

@@ -140,7 +140,8 @@ private:
void updateProjectData();
void updateFallbackProjectData();
QList<ProjectExplorer::ExtraCompiler *> findExtraCompilers();
void updateQmlJSCodeModel(const QStringList &extraHeaderPaths);
void updateQmlJSCodeModel(const QStringList &extraHeaderPaths,
const QList<QByteArray> &moduleMappings);
void handleParsingSucceeded();
void handleParsingFailed(const QString &msg);