diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2008-01-09 18:26:47 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2008-01-09 18:26:47 +0000 |
commit | 9c88023faf6d63806fa747eda541294f22a1e5f3 (patch) | |
tree | 0e7891587cf986aa9c2b4bd0de6587982a1c4c32 /gtk2_ardour/editor_selection.cc | |
parent | b007f7fe621e8390b41df5a725fbb697d3d69fb9 (diff) |
make separate work with/without selected tracks; make align-regions-*-relative work correctly; make waveform muted color show correctly
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2855 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_selection.cc')
-rw-r--r-- | gtk2_ardour/editor_selection.cc | 68 |
1 files changed, 60 insertions, 8 deletions
diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc index 1ae304316b..f1248fb13a 100644 --- a/gtk2_ardour/editor_selection.cc +++ b/gtk2_ardour/editor_selection.cc @@ -840,7 +840,7 @@ void Editor::select_all (Selection::Operation op) { list<Selectable *> touched; - + for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { if ((*iter)->hidden()) { continue; @@ -1023,7 +1023,15 @@ Editor::select_all_selectables_using_time_selection () return; } - for (TrackViewList::iterator iter = selection->tracks.begin(); iter != selection->tracks.end(); ++iter) { + TrackSelection* ts; + + if (selection->tracks.empty()) { + ts = &track_views; + } else { + ts = &selection->tracks; + } + + for (TrackViewList::iterator iter = ts->begin(); iter != ts->end(); ++iter) { if ((*iter)->hidden()) { continue; } @@ -1046,7 +1054,16 @@ Editor::select_all_selectables_using_punch() return; } - for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { + + TrackSelection* ts; + + if (selection->tracks.empty()) { + ts = &track_views; + } else { + ts = &selection->tracks; + } + + for (TrackViewList::iterator iter = ts->begin(); iter != ts->end(); ++iter) { if ((*iter)->hidden()) { continue; } @@ -1068,7 +1085,16 @@ Editor::select_all_selectables_using_loop() return; } - for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { + + TrackSelection* ts; + + if (selection->tracks.empty()) { + ts = &track_views; + } else { + ts = &selection->tracks; + } + + for (TrackViewList::iterator iter = ts->begin(); iter != ts->end(); ++iter) { if ((*iter)->hidden()) { continue; } @@ -1101,7 +1127,16 @@ Editor::select_all_selectables_using_cursor (Cursor *cursor, bool after) } } - for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { + + TrackSelection* ts; + + if (selection->tracks.empty()) { + ts = &track_views; + } else { + ts = &selection->tracks; + } + + for (TrackViewList::iterator iter = ts->begin(); iter != ts->end(); ++iter) { if ((*iter)->hidden()) { continue; } @@ -1132,7 +1167,16 @@ Editor::select_all_selectables_using_edit (bool after) } } - for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { + + TrackSelection* ts; + + if (selection->tracks.empty()) { + ts = &track_views; + } else { + ts = &selection->tracks; + } + + for (TrackViewList::iterator iter = ts->begin(); iter != ts->end(); ++iter) { if ((*iter)->hidden()) { continue; } @@ -1152,8 +1196,16 @@ Editor::select_all_selectables_between (bool within) if (!get_edit_op_range (start, end)) { return; } - - for (TrackViewList::iterator iter = track_views.begin(); iter != track_views.end(); ++iter) { + + TrackSelection* ts; + + if (selection->tracks.empty()) { + ts = &track_views; + } else { + ts = &selection->tracks; + } + + for (TrackViewList::iterator iter = ts->begin(); iter != ts->end(); ++iter) { if ((*iter)->hidden()) { continue; } |