]> git.sesse.net Git - kdenlive/blobdiff - src/moveclipcommand.cpp
First steps to implement 3 points editing (Using v to insert-overwrite)
[kdenlive] / src / moveclipcommand.cpp
index 1cc459bb6384df1ec5039a3365fcd2de5b46f93d..659c09faad669e31687fc9f1ad0a0f6dbeb88828 100644 (file)
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA          *
  ***************************************************************************/
 
-#include <KLocale>
 
 #include "moveclipcommand.h"
 #include "customtrackview.h"
-MoveClipCommand::MoveClipCommand(CustomTrackView *view, const ItemInfo start, const ItemInfo end, bool forceProducer, bool doIt, QUndoCommand * parent) : QUndoCommand(parent), m_view(view), m_startPos(start), m_endPos(end), m_forceProducer(forceProducer), m_doIt(doIt) {
+
+#include <KLocale>
+
+MoveClipCommand::MoveClipCommand(CustomTrackView *view, const ItemInfo start, const ItemInfo end, bool doIt, QUndoCommand * parent) :
+        QUndoCommand(parent),
+        m_view(view),
+        m_startPos(start),
+        m_endPos(end),
+        m_doIt(doIt)
+{
     setText(i18n("Move 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 MoveClipCommand::undo() {
+void MoveClipCommand::undo()
+{
 // kDebug()<<"----  undoing action";
     m_doIt = true;
-    m_view->moveClip(m_endPos, m_startPos, m_forceProducer);
+    m_view->moveClip(m_endPos, m_startPos, m_refresh);
 }
 // virtual
-void MoveClipCommand::redo() {
-    kDebug() << "----  redoing action";
+void MoveClipCommand::redo()
+{
+    //kDebug() << "----  redoing action";
     if (m_doIt)
-        m_view->moveClip(m_startPos, m_endPos, m_forceProducer);
+        m_view->moveClip(m_startPos, m_endPos, m_refresh);
     m_doIt = true;
 }