X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fedittransitioncommand.cpp;h=58346c4d802064a403ad0dd228c9bbacd590b219;hb=f5fb33ba25318ea5641dcefde961c74dfd2bba89;hp=92ec2d6bfe529a9436e5771403fc697b18c600a8;hpb=7fff167fb95bb6b13b138b8d3f7b68da8a030473;p=kdenlive diff --git a/src/edittransitioncommand.cpp b/src/edittransitioncommand.cpp index 92ec2d6b..58346c4d 100644 --- a/src/edittransitioncommand.cpp +++ b/src/edittransitioncommand.cpp @@ -14,13 +14,20 @@ * (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); @@ -30,12 +37,14 @@ EditTransitionCommand::EditTransitionCommand(CustomTrackView *view, const int tr } // virtual -int EditTransitionCommand::id() const { - return 1; +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,14 @@ bool EditTransitionCommand::mergeWith(const QUndoCommand * other) { } // virtual -void EditTransitionCommand::undo() { - m_view->updateTransition(m_track, m_pos, m_effect, m_oldeffect); +void EditTransitionCommand::undo() +{ + m_view->updateTransition(m_track, m_pos, m_effect, m_oldeffect, m_doIt); } // virtual -void EditTransitionCommand::redo() { - m_view->updateTransition(m_track, m_pos, m_oldeffect, m_effect); +void EditTransitionCommand::redo() +{ + m_view->updateTransition(m_track, m_pos, m_oldeffect, m_effect, m_doIt); + m_doIt = true; }