MCPcopy Create free account
hub / github.com/KDE/labplot / load

Method load

src/backend/spreadsheet/StatisticsSpreadsheet.cpp:324–364  ·  view source on GitHub ↗

! Loads from XML. */

Source from the content-addressed store, hash-verified

322 Loads from XML.
323*/
324bool StatisticsSpreadsheet::load(XmlStreamReader* reader, bool preview) {
325 if (preview)
326 return true;
327
328 if (!readBasicAttributes(reader))
329 return false;
330
331 const auto& attribs = reader->attributes();
332 const auto& str = attribs.value(QStringLiteral("metrics")).toString();
333 if (str.isEmpty())
334 reader->raiseMissingAttributeWarning(QStringLiteral("metrics"));
335 else
336 m_metrics = static_cast<StatisticsSpreadsheet::Metric>(str.toInt());
337
338 // read child elements
339 while (!reader->atEnd()) {
340 reader->readNext();
341
342 if (reader->isEndElement() && reader->name() == QStringLiteral("statisticsSpreadsheet"))
343 break;
344
345 if (reader->isStartElement()) {
346 if (reader->name() == QStringLiteral("column")) {
347 Column* column = new Column(QString());
348 column->setIsLoading(true);
349 if (!column->load(reader, preview)) {
350 delete column;
351 setColumnCount(0);
352 return false;
353 }
354 addChildFast(column);
355 } else { // unknown element
356 reader->raiseUnknownElementWarning();
357 if (!reader->skipToEndElement())
358 return false;
359 }
360 }
361 }
362
363 return !reader->hasError();
364}

Callers

nothing calls this directly

Calls 10

atEndMethod · 0.80
setIsLoadingMethod · 0.80
skipToEndElementMethod · 0.80
QStringClass · 0.50
toStringMethod · 0.45
valueMethod · 0.45
isEmptyMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected