X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fedittransitioncommand.cpp;h=dd3afe7da269871f6e9001db0b3e11bc10a7e43a;hb=459897cce1528ca378985269e6ea70f21d49422b;hp=89c2081f49cbbf1c28db9c32a330101d4a9aa3f2;hpb=a63b443f9bad49c40071ff2fea1c8cb87d153a43;p=kdenlive diff --git a/src/edittransitioncommand.cpp b/src/edittransitioncommand.cpp index 89c2081f..dd3afe7d 100644 --- a/src/edittransitioncommand.cpp +++ b/src/edittransitioncommand.cpp @@ -14,28 +14,37 @@ * (at your option) any later version. * * * ***************************************************************************/ -#include #include "edittransitioncommand.h" #include "customtrackview.h" -EditTransitionCommand::EditTransitionCommand(CustomTrackView *view, const int track, GenTime pos, QDomElement oldeffect, QDomElement effect, bool doIt) - : m_view(view), m_track(track), m_pos(pos), m_oldeffect(oldeffect), m_doIt(doIt) { +#include + +EditTransitionCommand::EditTransitionCommand(CustomTrackView *view, const int track, GenTime pos, QDomElement oldeffect, QDomElement effect, bool doIt, QUndoCommand * parent) : + QUndoCommand(parent), + m_view(view), + m_track(track), + m_oldeffect(oldeffect), + m_pos(pos), + m_doIt(doIt) +{ m_effect = effect.cloneNode().toElement(); QString effectName; - QDomNode namenode = effect.elementsByTagName("name").item(0); - if (!namenode.isNull()) effectName = i18n(namenode.toElement().text().toUtf8().data()); + QDomElement namenode = effect.firstChildElement("name"); + if (!namenode.isNull()) effectName = i18n(namenode.text().toUtf8().data()); else effectName = i18n("effect"); setText(i18n("Edit transition %1", effectName)); } // virtual -int EditTransitionCommand::id() const { +int EditTransitionCommand::id() const +{ return 2; } // virtual -bool EditTransitionCommand::mergeWith(const QUndoCommand * other) { +bool EditTransitionCommand::mergeWith(const QUndoCommand * other) +{ if (other->id() != id()) return false; if (m_track != static_cast(other)->m_track) return false; if (m_pos != static_cast(other)->m_pos) return false; @@ -44,11 +53,13 @@ bool EditTransitionCommand::mergeWith(const QUndoCommand * other) { } // virtual -void EditTransitionCommand::undo() { +void EditTransitionCommand::undo() +{ m_view->updateTransition(m_track, m_pos, m_effect, m_oldeffect, m_doIt); } // virtual -void EditTransitionCommand::redo() { +void EditTransitionCommand::redo() +{ m_view->updateTransition(m_track, m_pos, m_oldeffect, m_effect, m_doIt); m_doIt = true; }