X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Ftitledocument.cpp;h=f76707bf5e13e3afaa843c5fb78b7a8ebc8918cb;hb=5d4746e4c3e8665de83e6d281dcd08a46cd22c31;hp=f4b40bac1a5ef18e125941294b7a7246939c3084;hpb=6e8e2fba5fd699e7492937fb19422db73c5f1fb8;p=kdenlive diff --git a/src/titledocument.cpp b/src/titledocument.cpp index f4b40bac..f76707bf 100644 --- a/src/titledocument.cpp +++ b/src/titledocument.cpp @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include @@ -182,6 +182,7 @@ QDomDocument TitleDocument::xml(QGraphicsRectItem* startv, QGraphicsRectItem* en if (!t->data(100).isNull()) { QStringList effectParams = t->data(100).toStringList(); QString effectName = effectParams.takeFirst(); + content.setAttribute("textwidth", t->sceneBoundingRect().width()); content.setAttribute(effectName, effectParams.join(";")); } @@ -230,7 +231,8 @@ QDomDocument TitleDocument::xml(QGraphicsRectItem* startv, QGraphicsRectItem* en if (blur) { effect.setAttribute("type", "blur"); effect.setAttribute("blurradius", blur->blurRadius()); - } else { + } /*else { + //WARNING:those effects are anyways broken because they use QPixmaps which are not safe for MLT's threaded workflow QGraphicsDropShadowEffect *shadow = static_cast (eff); if (shadow) { effect.setAttribute("type", "shadow"); @@ -238,7 +240,7 @@ QDomDocument TitleDocument::xml(QGraphicsRectItem* startv, QGraphicsRectItem* en effect.setAttribute("xoffset", shadow->xOffset()); effect.setAttribute("yoffset", shadow->yOffset()); } - } + }*/ e.appendChild(effect); } #endif @@ -268,12 +270,12 @@ QDomDocument TitleDocument::xml(QGraphicsRectItem* startv, QGraphicsRectItem* en /** \brief Get the background color (incl. alpha) from the document, if possibly * \returns The background color of the document, inclusive alpha. If none found, returns (0,0,0,0) */ -QColor TitleDocument::getBackgroundColor() +QColor TitleDocument::getBackgroundColor() const { QColor color(0, 0, 0, 0); if (m_scene) { QList items = m_scene->items(); - for (int i = 0; i < items.size(); i++) { + for (int i = 0; i < items.size(); ++i) { if (items.at(i)->zValue() == -1100) { color = ((QGraphicsRectItem *)items.at(i))->brush().color(); return color; @@ -310,7 +312,7 @@ bool TitleDocument::saveDocument(const KUrl& url, QGraphicsRectItem* startv, QGr return KIO::NetAccess::upload(tmpfile.fileName(), url, 0); } -int TitleDocument::loadFromXml(QDomDocument doc, QGraphicsRectItem* startv, QGraphicsRectItem* endv, int *duration, const QString& projectpath) +int TitleDocument::loadFromXml(const QDomDocument& doc, QGraphicsRectItem* startv, QGraphicsRectItem* endv, int *duration, const QString& projectpath) { m_projectPath = projectpath; QDomNodeList titles = doc.elementsByTagName("kdenlivetitle"); @@ -347,7 +349,7 @@ int TitleDocument::loadFromXml(QDomDocument doc, QGraphicsRectItem* startv, QGra if (titles.size()) { QDomNodeList items = titles.item(0).childNodes(); - for (int i = 0; i < items.count(); i++) { + for (int i = 0; i < items.count(); ++i) { QGraphicsItem *gitem = NULL; kDebug() << items.item(i).attributes().namedItem("type").nodeValue(); int zValue = items.item(i).attributes().namedItem("z-index").nodeValue().toInt(); @@ -505,7 +507,7 @@ int TitleDocument::loadFromXml(QDomDocument doc, QGraphicsRectItem* startv, QGra QColor color = QColor(stringToColor(items.item(i).attributes().namedItem("color").nodeValue())); //color.setAlpha(items.item(i).attributes().namedItem("alpha").nodeValue().toInt()); QList items = m_scene->items(); - for (int i = 0; i < items.size(); i++) { + for (int i = 0; i < items.size(); ++i) { if (items.at(i)->zValue() == -1100) { ((QGraphicsRectItem *)items.at(i))->setBrush(QBrush(color)); break; @@ -560,7 +562,7 @@ QColor TitleDocument::stringToColor(const QString & s) QTransform TitleDocument::stringToTransform(const QString& s) { - QStringList l = s.split(','); + QStringList l = s.split(QLatin1Char(',')); if (l.size() < 9) return QTransform(); return QTransform(