File indexing completed on 2024-04-21 04:51:11
0001 /* 0002 SPDX-FileCopyrightText: 2015 Jean-Baptiste Mardelle <jb@kdenlive.org> 0003 0004 0005 SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0006 */ 0007 0008 #include "bincommands.h" 0009 #include "bin.h" 0010 0011 #include <KLocalizedString> 0012 #include <utility> 0013 MoveBinClipCommand::MoveBinClipCommand(Bin *bin, QString clipId, QString oldParentId, QString newParentId, QUndoCommand *parent) 0014 : QUndoCommand(parent) 0015 , m_bin(bin) 0016 , m_clipId(std::move(clipId)) 0017 , m_oldParentId(std::move(oldParentId)) 0018 , m_newParentId(std::move(newParentId)) 0019 { 0020 setText(i18nc("@action", "Move Clip")); 0021 } 0022 // virtual 0023 void MoveBinClipCommand::undo() 0024 { 0025 m_bin->doMoveClip(m_clipId, m_oldParentId); 0026 } 0027 // virtual 0028 void MoveBinClipCommand::redo() 0029 { 0030 m_bin->doMoveClip(m_clipId, m_newParentId); 0031 } 0032 0033 MoveBinFolderCommand::MoveBinFolderCommand(Bin *bin, QString clipId, QString oldParentId, QString newParentId, QUndoCommand *parent) 0034 : QUndoCommand(parent) 0035 , m_bin(bin) 0036 , m_clipId(std::move(clipId)) 0037 , m_oldParentId(std::move(oldParentId)) 0038 , m_newParentId(std::move(newParentId)) 0039 { 0040 setText(i18nc("@action", "Move Clip")); 0041 } 0042 // virtual 0043 void MoveBinFolderCommand::undo() 0044 { 0045 m_bin->doMoveFolder(m_clipId, m_oldParentId); 0046 } 0047 // virtual 0048 void MoveBinFolderCommand::redo() 0049 { 0050 m_bin->doMoveFolder(m_clipId, m_newParentId); 0051 } 0052 0053 RenameBinSubClipCommand::RenameBinSubClipCommand(Bin *bin, QString clipId, QString newName, QString oldName, int in, int out, QUndoCommand *parent) 0054 : QUndoCommand(parent) 0055 , m_bin(bin) 0056 , m_clipId(std::move(clipId)) 0057 , m_oldName(std::move(oldName)) 0058 , m_newName(std::move(newName)) 0059 , m_in(in) 0060 , m_out(out) 0061 { 0062 setText(i18n("Rename Zone")); 0063 } 0064 // virtual 0065 void RenameBinSubClipCommand::undo() 0066 { 0067 m_bin->renameSubClip(m_clipId, m_oldName, m_in, m_out); 0068 } 0069 // virtual 0070 void RenameBinSubClipCommand::redo() 0071 { 0072 m_bin->renameSubClip(m_clipId, m_newName, m_in, m_out); 0073 } 0074 0075 EditClipCommand::EditClipCommand(Bin *bin, QString id, QMap<QString, QString> oldparams, QMap<QString, QString> newparams, bool doIt, QUndoCommand *parent) 0076 : QUndoCommand(parent) 0077 , m_bin(bin) 0078 , m_oldparams(std::move(oldparams)) 0079 , m_newparams(std::move(newparams)) 0080 , m_id(std::move(id)) 0081 , m_doIt(doIt) 0082 , m_firstExec(true) 0083 { 0084 setText(i18n("Edit clip")); 0085 } 0086 // virtual 0087 void EditClipCommand::undo() 0088 { 0089 m_bin->slotUpdateClipProperties(m_id, m_oldparams, true); 0090 } 0091 // virtual 0092 void EditClipCommand::redo() 0093 { 0094 if (m_doIt) { 0095 m_bin->slotUpdateClipProperties(m_id, m_newparams, !m_firstExec); 0096 } 0097 m_doIt = true; 0098 m_firstExec = false; 0099 }