X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Faddtimelineclipcommand.cpp;h=543ac23f24958a7c06d212b69bd992dc108a0c5c;hb=39434a7d8e88af758bb19bb7a47891f5f1c77179;hp=27504a0b74e420312010b879d75ff9a93e9d1dd6;hpb=09a7882d8a0f2a897f1be4fb8e9418d0666d712a;p=kdenlive diff --git a/src/addtimelineclipcommand.cpp b/src/addtimelineclipcommand.cpp index 27504a0b..543ac23f 100644 --- a/src/addtimelineclipcommand.cpp +++ b/src/addtimelineclipcommand.cpp @@ -17,29 +17,41 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * ***************************************************************************/ -#include #include "addtimelineclipcommand.h" +#include "customtrackview.h" + +#include -AddTimelineClipCommand::AddTimelineClipCommand(CustomTrackView *view, QDomElement xml, int track, int startpos, QRectF rect, int duration, bool doIt) - : m_view(view), m_xml(xml), m_clipTrack(track), m_clipPos(startpos), m_clipRect(rect), m_clipDuration(duration), m_doIt(doIt) { - setText(i18n("Add timeline clip")); - } +AddTimelineClipCommand::AddTimelineClipCommand(CustomTrackView *view, QDomElement xml, const QString &clipId, ItemInfo info, EffectsList effects, bool doIt, bool doRemove, QUndoCommand * parent) : + QUndoCommand(parent), + m_view(view), + m_clipInfo(info), + m_effects(effects), + m_clipId(clipId), + m_xml(xml), + m_doIt(doIt), + m_remove(doRemove) +{ + if (!m_remove) setText(i18n("Add timeline clip")); + else setText(i18n("Delete timeline clip")); +} -// virtual +// virtual void AddTimelineClipCommand::undo() { -// kDebug()<<"---- undoing action"; - m_doIt = true; - if (m_doIt) m_view->deleteClip(m_clipRect); + if (!m_remove) m_view->deleteClip(m_clipInfo); + else m_view->addClip(m_xml, m_clipId, m_clipInfo, m_effects); } -// virtual +// virtual void AddTimelineClipCommand::redo() { - //kDebug()<<"---- redoing action"; - if (m_doIt) m_view->addClip(m_xml, m_clipTrack, m_clipPos, m_clipRect, m_clipDuration); - m_doIt = true; + if (m_doIt) { + if (!m_remove) m_view->addClip(m_xml, m_clipId, m_clipInfo, m_effects); + else m_view->deleteClip(m_clipInfo); + } + m_doIt = true; } -#include "addtimelineclipcommand.moc" +