r191@gandalf: fugalh | 2006-07-24 19:50:10 -0600
[ardour.git] / gtk2_ardour / automation_line.cc
index b87a71ca875aa1699dc861659856f08371a4ec0b..f5b23f01ae9208e50fff6934220d60c060e6cd11 100644 (file)
@@ -1013,11 +1013,11 @@ AutomationLine::remove_point (ControlPoint& cp)
        model_representation (cp, mr);
 
        trackview.editor.current_session()->begin_reversible_command (_("remove control point"));
-       trackview.editor.current_session()->add_undo (get_memento());
+        XMLNode &before = get_state();
 
        alist.erase (mr.start, mr.end);
 
-       trackview.editor.current_session()->add_redo_no_execute (get_memento());
+       trackview.editor.current_session()->add_command(MementoCommand<AutomationLine>(*this, before, get_state()));
        trackview.editor.current_session()->commit_reversible_command ();
        trackview.editor.current_session()->set_dirty ();
 }
@@ -1225,9 +1225,10 @@ void
 AutomationLine::clear ()
 {
        /* parent must create command */
+        XMLNode &before = get_state();
        trackview.editor.current_session()->add_undo (get_memento());
        alist.clear();
-       trackview.editor.current_session()->add_redo_no_execute (get_memento());
+       trackview.editor.current_session()->add_command (MementoCommand<AutomationLine>(*this, before, get_state()));
        trackview.editor.current_session()->commit_reversible_command ();
        trackview.editor.current_session()->set_dirty ();
 }