summaryrefslogtreecommitdiff
path: root/gtk2_ardour/audio_region_view.cc
diff options
context:
space:
mode:
authorHans Fugal <hans@fugal.net>2006-08-04 03:42:34 +0000
committerHans Fugal <hans@fugal.net>2006-08-04 03:42:34 +0000
commit5756373841675a879833f98bb4008dd0c40714d3 (patch)
tree5ab9e96d4e4314554a818b541bbc8e0e5f0c3e70 /gtk2_ardour/audio_region_view.cc
parent79986643c0c904f6574bb5323e2233a43a9e622e (diff)
Really fixed conflicts. Ready to merge into trunk.
git-svn-id: svn://localhost/ardour2/branches/undo@757 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/audio_region_view.cc')
-rw-r--r--gtk2_ardour/audio_region_view.cc11
1 files changed, 7 insertions, 4 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc
index feb8f4fd0b..bdea3d39a2 100644
--- a/gtk2_ardour/audio_region_view.cc
+++ b/gtk2_ardour/audio_region_view.cc
@@ -30,6 +30,7 @@
#include <ardour/audioregion.h>
#include <ardour/audiosource.h>
#include <ardour/audio_diskstream.h>
+#include <pbd/memento_command.h>
#include "streamview.h"
#include "audio_region_view.h"
@@ -898,18 +899,20 @@ AudioRegionView::add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *ev)
gain_line->view_to_model_y (y);
trackview.session().begin_reversible_command (_("add gain control point"));
- trackview.session().add_undo (audio_region().envelope().get_memento());
+ XMLNode &before = audio_region().envelope().get_state();
if (!audio_region().envelope_active()) {
- trackview.session().add_undo( bind( mem_fun(audio_region(), &AudioRegion::set_envelope_active), false) );
+ XMLNode &before = audio_region().get_state();
audio_region().set_envelope_active(true);
- trackview.session().add_redo( bind( mem_fun(audio_region(), &AudioRegion::set_envelope_active), true) );
+ XMLNode &after = audio_region().get_state();
+ trackview.session().add_command (new MementoCommand<AudioRegion>(audio_region(), before, after));
}
audio_region().envelope().add (fx, y);
- trackview.session().add_redo_no_execute (audio_region().envelope().get_memento());
+ XMLNode &after = audio_region().envelope().get_state();
+ trackview.session().add_command (new MementoCommand<Curve>(audio_region().envelope(), before, after));
trackview.session().commit_reversible_command ();
}