Skip to content
Snippets Groups Projects

GUI: serialization refactoring part 7

Merged Mikhail Svechnikov requested to merge serialization_7 into main
1 file
+ 9
15
Compare changes
  • Side-by-side
  • Inline
@@ -324,11 +324,12 @@ void ProjectDocument::writeProject(QIODevice* device)
m_sampleItems.writeTo(&w);
w.writeEndElement();
// instruments
w.writeStartElement(Tag::Instruments);
Streamer sInstruments(&w);
m_instruments.serialize(sInstruments);
m_instruments.writeTo(&w);
w.writeEndElement();
// job model and real model
m_applicationModels.writeTo(&w);
w.writeEndElement(); // BornAgain tag
@@ -375,19 +376,12 @@ ProjectDocument::ReadResult ProjectDocument::readProject(QIODevice* device,
m_sampleItems.readFrom(&r);
XML::gotoEndElementOfTag(&r, tag);
} else if (r.name() == Tag::Instruments) {
Streamer s(&r);
m_instruments.serialize(s);
// cleanup
if (r.name() != Tag::Instruments) {
if (!r.isEndElement())
r.skipCurrentElement();
r.skipCurrentElement();
}
XML::assertExpectedTag(&r, Tag::Instruments);
ASSERT(r.isEndElement());
XML::assertExpectedTag(&r, Tag::Instruments);
// instruments
} else if (tag == Tag::Instruments) {
m_instruments.readFrom(&r);
XML::gotoEndElementOfTag(&r, tag);
// job model and real model
} else
m_applicationModels.readFrom(&r, &messageService);
}
Loading