QmlDesigner: Allow imports without version

Change-Id: I67faea759f33d4e8467cf9c16ec2f82b339f0646
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
This commit is contained in:
Thomas Hartmann
2021-04-06 18:44:12 +02:00
parent e216a4edf4
commit 0af187299a

View File

@@ -123,7 +123,7 @@ QStringList knownEnumScopes()
bool supportedQtQuickVersion(const QString &version)
{
return supportedVersionsList().contains(version);
return version.isEmpty() || supportedVersionsList().contains(version);
}
QString stripQuotes(const QString &str)
@@ -797,11 +797,8 @@ void TextToModelMerger::setupImports(const Document::Ptr &doc,
differenceHandler.modelMissesImport(newImport);
} else {
QString importUri = toString(import->importUri);
if (importUri == QStringLiteral("Qt") && version == QStringLiteral("4.7")) {
importUri = QStringLiteral("QtQuick");
version = QStringLiteral("1.0");
}
if (version.isEmpty())
version = "2.15";
const Import newImport =
Import::createLibraryImport(importUri, version, as, m_rewriterView->importDirectories());
@@ -956,9 +953,13 @@ void TextToModelMerger::setupUsedImports()
}
for (const QmlJS::Import &import : allImports) {
QString version = import.info.version().toString();
if (version.isEmpty())
version = "2.15";
if (!import.info.name().isEmpty() && usedImportsSet.contains(import.info.name())) {
if (import.info.type() == ImportType::Library)
usedImports.append(Import::createLibraryImport(import.info.name(), import.info.version().toString(), import.info.as()));
usedImports.append(
Import::createLibraryImport(import.info.name(), version, import.info.as()));
else if (import.info.type() == ImportType::Directory || import.info.type() == ImportType::File)
usedImports.append(Import::createFileImport(import.info.name(), import.info.version().toString(), import.info.as()));
}