diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-01-08 14:50:41 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-01-08 14:50:41 +0000 |
commit | b5e414415685acfbbbd0edf1933a2dc851fdcabd (patch) | |
tree | e11b49c7b92169b6c07abe9b4b32d4096cedb5a8 /gtk2_ardour/editor_ops.cc | |
parent | a6ab33815a7adee67b5222c05481be151c572793 (diff) |
fix control layout size allocation (nearly done) and make duplicate region even more useful for multiple selected regions
git-svn-id: svn://localhost/trunk/ardour2@250 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_ops.cc')
-rw-r--r-- | gtk2_ardour/editor_ops.cc | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index ce60c18807..e9439b60d6 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -3279,10 +3279,13 @@ void Editor::duplicate_some_regions (AudioRegionSelection& regions, float times) { Playlist *playlist; - + AudioRegionSelection sel = regions; // clear (below) will clear the argument list + begin_reversible_command (_("duplicate region")); - for (AudioRegionSelection::iterator i = regions.begin(); i != regions.end(); ++i) { + selection->clear_audio_regions (); + + for (AudioRegionSelection::iterator i = sel.begin(); i != sel.end(); ++i) { Region& r ((*i)->region); @@ -3296,11 +3299,12 @@ Editor::duplicate_some_regions (AudioRegionSelection& regions, float times) session->add_redo_no_execute (playlist->get_memento()); c.disconnect (); + + if (latest_regionview) { + selection->add (latest_regionview); + } } - if (latest_regionview) { - selection->set (latest_regionview); - } commit_reversible_command (); } |