From 61c1c59f8792667c69a47c035cbf24becb21b3c3 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Thu, 10 Jun 2010 11:55:40 +0200 Subject: [PATCH] QmlDesigner: Store imports in a list, not a set The order of imports does matter, therefore it should also be represented as a list in the model. Reviewed-by: Marco Bubke --- src/plugins/qmldesigner/designercore/include/model.h | 2 +- src/plugins/qmldesigner/designercore/model/model.cpp | 6 +++--- src/plugins/qmldesigner/designercore/model/model_p.h | 4 ++-- src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/include/model.h b/src/plugins/qmldesigner/designercore/include/model.h index 641c1cd574..a8523623d9 100644 --- a/src/plugins/qmldesigner/designercore/include/model.h +++ b/src/plugins/qmldesigner/designercore/include/model.h @@ -96,7 +96,7 @@ public: // Editing sub-components: // Imports: - QSet imports() const; + QList imports() const; void addImport(const Import &import); void removeImport(const Import &import); diff --git a/src/plugins/qmldesigner/designercore/model/model.cpp b/src/plugins/qmldesigner/designercore/model/model.cpp index 3cfafe5008..2a9fdaf199 100644 --- a/src/plugins/qmldesigner/designercore/model/model.cpp +++ b/src/plugins/qmldesigner/designercore/model/model.cpp @@ -122,13 +122,13 @@ void ModelPrivate::addImport(const Import &import) if (m_imports.contains(import)) return; - m_imports.insert(import); + m_imports.append(import); notifyImportAdded(import); } void ModelPrivate::removeImport(const Import &import) { - if (!m_imports.remove(import)) + if (!m_imports.removeOne(import)) return; notifyImportRemoved(import); @@ -1004,7 +1004,7 @@ Model *Model::create(QString type, int major, int minor) // return subModel; //} -QSet Model::imports() const +QList Model::imports() const { return m_d->imports(); } diff --git a/src/plugins/qmldesigner/designercore/model/model_p.h b/src/plugins/qmldesigner/designercore/model/model_p.h index fcd38b3716..026f0b079a 100644 --- a/src/plugins/qmldesigner/designercore/model/model_p.h +++ b/src/plugins/qmldesigner/designercore/model/model_p.h @@ -154,7 +154,7 @@ public: // Imports: - QSet imports() const { return m_imports; } + QList imports() const { return m_imports; } void addImport(const Import &import); void removeImport(const Import &import); void notifyImportAdded(const Import &import) const; @@ -197,7 +197,7 @@ private: Model *m_q; MetaInfo m_metaInfo; - QSet m_imports; + QList m_imports; QList > m_viewList; QList m_selectedNodeList; QHash m_idNodeHash; diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp index 81a1dd18d6..909487cfcc 100644 --- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp +++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp @@ -491,7 +491,7 @@ bool TextToModelMerger::isActive() const void TextToModelMerger::setupImports(const Document::Ptr &doc, DifferenceHandler &differenceHandler) { - QSet existingImports = m_rewriterView->model()->imports(); + QList existingImports = m_rewriterView->model()->imports(); for (UiImportList *iter = doc->qmlProgram()->imports; iter; iter = iter->next) { UiImport *import = iter->import; @@ -510,13 +510,13 @@ void TextToModelMerger::setupImports(const Document::Ptr &doc, const Import newImport = Import::createFileImport(strippedFileName, version, as); - if (!existingImports.remove(newImport)) + if (!existingImports.removeOne(newImport)) differenceHandler.modelMissesImport(newImport); } else { const Import newImport = Import::createLibraryImport(flatten(import->importUri), as, version); - if (!existingImports.remove(newImport)) + if (!existingImports.removeOne(newImport)) differenceHandler.modelMissesImport(newImport); } } -- 2.11.0