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

Method load

src/backend/spreadsheet/Spreadsheet.cpp:1267–1321  ·  view source on GitHub ↗

! Loads from XML. */

Source from the content-addressed store, hash-verified

1265 Loads from XML.
1266*/
1267bool Spreadsheet::load(XmlStreamReader* reader, bool preview) {
1268 Q_D(Spreadsheet);
1269 if (!readBasicAttributes(reader))
1270 return false;
1271
1272 QString str;
1273 QXmlStreamAttributes attribs;
1274
1275 // read child elements
1276 while (!reader->atEnd()) {
1277 reader->readNext();
1278
1279 if (reader->isEndElement() && reader->name() == QLatin1String("spreadsheet"))
1280 break;
1281
1282 if (reader->isStartElement()) {
1283 if (reader->name() == QLatin1String("comment")) {
1284 if (!readCommentElement(reader))
1285 return false;
1286 } else if (reader->name() == QLatin1String("general")) {
1287 attribs = reader->attributes();
1288 READ_INT_VALUE("showComments", showComments, bool);
1289 READ_INT_VALUE("showSparklines", showSparklines, bool);
1290 } else if (reader->name() == QLatin1String("linking")) {
1291 attribs = reader->attributes();
1292 READ_INT_VALUE("enabled", linking.linking, bool);
1293 d->linking.linkedSpreadsheetPath = attribs.value(QStringLiteral("spreadsheet")).toString();
1294 } else if (reader->name() == QLatin1String("column")) {
1295 Column* column = new Column(QString());
1296 column->setIsLoading(true);
1297 if (!column->load(reader, preview)) {
1298 delete column;
1299 setColumnCount(0);
1300 return false;
1301 }
1302 addChildFast(column);
1303 } else if (reader->name() == QLatin1String("statisticsSpreadsheet")) {
1304 d->statisticsSpreadsheet = new StatisticsSpreadsheet(this, true);
1305 if (!d->statisticsSpreadsheet->load(reader, preview)) {
1306 delete d->statisticsSpreadsheet;
1307 d->statisticsSpreadsheet = nullptr;
1308 } else
1309 addChildFast(d->statisticsSpreadsheet);
1310 } else { // unknown element
1311 reader->raiseUnknownElementWarning();
1312 if (!reader->skipToEndElement())
1313 return false;
1314 }
1315 }
1316 }
1317
1318 initConnectionsRowCountChanges();
1319
1320 return !reader->hasError();
1321}
1322
1323// ##############################################################################
1324// ######################## Data Import #######################################

Callers

nothing calls this directly

Calls 8

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

Tested by

no test coverage detected