#include <KLocale>
-AddEffectCommand::AddEffectCommand(CustomTrackView *view, const int track, GenTime pos, QDomElement effect, bool doIt, QUndoCommand * parent) : QUndoCommand(parent), m_view(view), m_track(track), m_pos(pos), m_effect(effect), m_doIt(doIt) {
+AddEffectCommand::AddEffectCommand(CustomTrackView *view, const int track, GenTime pos, QDomElement effect, bool doIt, QUndoCommand * parent) :
+ QUndoCommand(parent),
+ m_view(view),
+ m_track(track),
+ m_effect(effect.cloneNode().toElement()),
+ m_pos(pos),
+ m_doIt(doIt)
+{
QString effectName;
- QDomNode namenode = effect.elementsByTagName("name").item(0);
+ QDomNode namenode = m_effect.elementsByTagName("name").item(0);
if (!namenode.isNull()) effectName = i18n(namenode.toElement().text().toUtf8().data());
else effectName = i18n("effect");
if (doIt) setText(i18n("Add %1", effectName));
// virtual
-void AddEffectCommand::undo() {
+void AddEffectCommand::undo()
+{
kDebug() << "---- undoing action";
if (m_doIt) m_view->deleteEffect(m_track, m_pos, m_effect);
else m_view->addEffect(m_track, m_pos, m_effect);
}
// virtual
-void AddEffectCommand::redo() {
+void AddEffectCommand::redo()
+{
kDebug() << "---- redoing action";
if (m_doIt) m_view->addEffect(m_track, m_pos, m_effect);
else m_view->deleteEffect(m_track, m_pos, m_effect);