diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-01-18 04:34:00 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-01-18 04:34:00 +0000 |
commit | 013ec977324d98d7c4b243ddad86d84b94abdc62 (patch) | |
tree | 8ef847eaab6b6df2bf406eba96370c9fd4bd9301 /gtk2_ardour/editor_ops.cc | |
parent | 143983948ecbdc9e9e4c4f3fe2541b2bea22be87 (diff) |
make ctrl-rubber-band-select do something closer to the right thing
git-svn-id: svn://localhost/ardour2/trunk@1354 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_ops.cc')
-rw-r--r-- | gtk2_ardour/editor_ops.cc | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index db94e44fe6..6e6d269f21 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -1394,16 +1394,30 @@ Editor::select_all_within (nframes_t start, nframes_t end, double top, double bo } if (!touched_tracks.empty()) { - selection->clear_tracks(); - selection->set (touched_tracks); + switch (op) { + case Selection::Add: + selection->add (touched_tracks); + break; + case Selection::Toggle: + selection->toggle (touched_tracks); + break; + case Selection::Set: + selection->set (touched_tracks); + break; + case Selection::Extend: + /* not defined yet */ + break; + } } begin_reversible_command (_("select all within")); switch (op) { case Selection::Add: - case Selection::Toggle: selection->add (touched); break; + case Selection::Toggle: + selection->toggle (touched); + break; case Selection::Set: selection->set (touched); break; |