summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_timefx.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-12-10 21:32:27 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2007-12-10 21:32:27 +0000
commitacf1490e45034a961b7703154c5eabaf6a9aec55 (patch)
tree73fc1d9befef1f751ef4b956322d7eeeb99b4eba /gtk2_ardour/editor_timefx.cc
parentf3dd3e6b18be7d22ca31e5424c2a07922b44b74e (diff)
AU support; mv LADSPA gui to Generic; small fix(?) for NSD issue with absolute/full pathnames
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2755 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_timefx.cc')
-rw-r--r--gtk2_ardour/editor_timefx.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/gtk2_ardour/editor_timefx.cc b/gtk2_ardour/editor_timefx.cc
index b87c80b38e..0a8deee0dd 100644
--- a/gtk2_ardour/editor_timefx.cc
+++ b/gtk2_ardour/editor_timefx.cc
@@ -255,11 +255,14 @@ Editor::do_timefx (TimeFXDialog& dialog)
Track* t;
boost::shared_ptr<Playlist> playlist;
boost::shared_ptr<Region> new_region;
+ bool in_command = false;
for (RegionSelection::iterator i = dialog.regions.begin(); i != dialog.regions.end(); ) {
AudioRegionView* arv = dynamic_cast<AudioRegionView*>(*i);
- if (!arv)
+
+ if (!arv) {
continue;
+ }
boost::shared_ptr<AudioRegion> region (arv->audio_region());
TimeAxisView* tv = &(arv->get_time_axis_view());
@@ -308,6 +311,11 @@ Editor::do_timefx (TimeFXDialog& dialog)
if (!fx->results.empty()) {
new_region = fx->results.front();
+ if (!in_command) {
+ begin_reversible_command (dialog.pitching ? _("pitch shift") : _("time stretch"));
+ in_command = true;
+ }
+
XMLNode &before = playlist->get_state();
playlist->replace_region (region, new_region, region->position());
XMLNode &after = playlist->get_state();
@@ -318,6 +326,10 @@ Editor::do_timefx (TimeFXDialog& dialog)
delete fx;
}
+ if (in_command) {
+ commit_reversible_command ();
+ }
+
dialog.status = 0;
dialog.request.done = true;
}