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

Method load

src/backend/datapicker/Datapicker.cpp:359–407  ·  view source on GitHub ↗

Load from XML

Source from the content-addressed store, hash-verified

357
358//! Load from XML
359bool Datapicker::load(XmlStreamReader* reader, bool preview) {
360 if (!readBasicAttributes(reader))
361 return false;
362
363 while (!reader->atEnd()) {
364 reader->readNext();
365 if (reader->isEndElement() && reader->name() == QLatin1String("datapicker"))
366 break;
367
368 if (!reader->isStartElement())
369 continue;
370
371 if (reader->name() == QLatin1String("comment")) {
372 if (!readCommentElement(reader))
373 return false;
374 } else if (reader->name() == QLatin1String("datapickerImage")) {
375 auto* plot = new DatapickerImage(i18n("Plot"), true);
376 if (!plot->load(reader, preview)) {
377 delete plot;
378 return false;
379 } else {
380 plot->setHidden(true);
381 addChild(plot);
382 m_image = plot;
383 }
384 } else if (reader->name() == QLatin1String("datapickerCurve")) {
385 auto* curve = new DatapickerCurve(QString());
386 if (!curve->load(reader, preview)) {
387 delete curve;
388 return false;
389 } else
390 addChild(curve);
391 } else { // unknown element
392 reader->raiseWarning(i18n("unknown datapicker element '%1'", reader->name().toString()));
393 if (!reader->skipToEndElement())
394 return false;
395 }
396 }
397
398 for (auto* aspect : children<AbstractAspect>(ChildIndexFlag::IncludeHidden)) {
399 for (auto* point : aspect->children<DatapickerPoint>(ChildIndexFlag::IncludeHidden))
400 handleAspectAdded(point);
401 }
402
403 for (auto* curve : children<DatapickerCurve>(ChildIndexFlag::IncludeHidden))
404 curve->updatePoints();
405
406 return true;
407}

Callers

nothing calls this directly

Calls 8

atEndMethod · 0.80
raiseWarningMethod · 0.80
skipToEndElementMethod · 0.80
updatePointsMethod · 0.80
QStringClass · 0.50
nameMethod · 0.45
setHiddenMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected