MCPcopy Create free account
hub / github.com/KDE/kdenlive / rowToXml

Method rowToXml

src/effects/effectstack/model/effectstackmodel.cpp:357–387  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

355}
356
357QDomElement EffectStackModel::rowToXml(int row, QDomDocument &document)
358{
359 QDomElement container = document.createElement(QStringLiteral("effects"));
360 if (row < 0 || row >= rootItem->childCount()) {
361 return container;
362 }
363 int currentIn = pCore->getItemIn(m_ownerId);
364 container.setAttribute(QStringLiteral("parentIn"), currentIn);
365 std::shared_ptr<EffectItemModel> sourceEffect = std::static_pointer_cast<EffectItemModel>(rootItem->child(row));
366 QDomElement sub = document.createElement(QStringLiteral("effect"));
367 sub.setAttribute(QStringLiteral("id"), sourceEffect->getAssetId());
368 int filterIn = sourceEffect->filter().get_int("in");
369 int filterOut = sourceEffect->filter().get_int("out");
370 if (filterOut > filterIn) {
371 sub.setAttribute(QStringLiteral("in"), filterIn);
372 sub.setAttribute(QStringLiteral("out"), filterOut);
373 }
374 QStringList passProps{QStringLiteral("disable"), QStringLiteral("kdenlive:collapsed"), QStringLiteral("kdenlive:builtin")};
375 for (const QString &param : passProps) {
376 int paramVal = sourceEffect->filter().get_int(param.toUtf8().constData());
377 if (paramVal > 0) {
378 Xml::setXmlProperty(sub, param, QString::number(paramVal));
379 }
380 }
381 QVector<QPair<QString, QVariant>> params = sourceEffect->getAllParameters();
382 for (const auto &param : std::as_const(params)) {
383 Xml::setXmlProperty(sub, param.first, param.second.toString());
384 }
385 container.appendChild(sub);
386 return container;
387}
388
389bool EffectStackModel::fromMltXml(const QDomElement &effectsXml)
390{

Callers 2

copyEffectMethod · 0.80
copyEffectWithUndoMethod · 0.80

Calls 9

childCountMethod · 0.80
getItemInMethod · 0.80
childMethod · 0.80
get_intMethod · 0.80
appendChildMethod · 0.80
getAssetIdMethod · 0.45
filterMethod · 0.45
getAllParametersMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected