X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Faddtransitioncommand.cpp;h=c8acc6dc8aa30ae13a58752a3dfda588e47289f0;hb=a0b31d454dcbbd7c31f1dca4cd22c71da61e8920;hp=e41adff1194e694da76c369715e09c1fe186a4e7;hpb=7fff167fb95bb6b13b138b8d3f7b68da8a030473;p=kdenlive diff --git a/src/addtransitioncommand.cpp b/src/addtransitioncommand.cpp index e41adff1..c8acc6dc 100644 --- a/src/addtransitioncommand.cpp +++ b/src/addtransitioncommand.cpp @@ -14,27 +14,43 @@ * (at your option) any later version. * * * ***************************************************************************/ -#include + #include "addtransitioncommand.h" #include "customtrackview.h" -AddTransitionCommand::AddTransitionCommand(CustomTrackView *view, ItemInfo info, int transitiontrack, QDomElement params, bool remove, bool doIt, QUndoCommand * parent) : QUndoCommand(parent), m_view(view), m_info(info), m_track(transitiontrack), m_params(params), m_remove(remove), m_doIt(doIt) { +#include + +AddTransitionCommand::AddTransitionCommand(CustomTrackView *view, ItemInfo info, int transitiontrack, QDomElement params, bool remove, bool doIt, QUndoCommand * parent) : + QUndoCommand(parent), + m_view(view), + m_info(info), + m_params(params), + m_track(transitiontrack), + m_doIt(doIt), + m_remove(remove) +{ if (m_remove) setText(i18n("Delete transition from clip")); else setText(i18n("Add transition to clip")); + if (parent) { + // command has a parent, so there are several operations ongoing, do not refresh monitor + m_refresh = false; + } else m_refresh = true; } // virtual -void AddTransitionCommand::undo() { - if (m_remove) m_view->addTransition(m_info, m_track, m_params); - else m_view->deleteTransition(m_info, m_track, m_params); +void AddTransitionCommand::undo() +{ + if (m_remove) m_view->addTransition(m_info, m_track, m_params, m_refresh); + else m_view->deleteTransition(m_info, m_track, m_params, m_refresh); } // virtual -void AddTransitionCommand::redo() { +void AddTransitionCommand::redo() +{ if (m_doIt) { - if (m_remove) m_view->deleteTransition(m_info, m_track, m_params); - else m_view->addTransition(m_info, m_track, m_params); + if (m_remove) m_view->deleteTransition(m_info, m_track, m_params, m_refresh); + else m_view->addTransition(m_info, m_track, m_params, m_refresh); } m_doIt = true; }