many changes, large and small, related to smart mode editing, range/region selection, and behaviour of playhead when always-play-range is enabled. could be buggy, but probably in subtle (or even very subtle) ways rather than obvious

git-svn-id: svn://localhost/ardour2/branches/3.0@11394 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis 2012-01-30 22:53:22 +00:00
parent 664cec2135
commit 7629120cda
13 changed files with 152 additions and 84 deletions

View file

@ -748,11 +748,21 @@ Selection::set (RegionView* r, bool also_clear_tracks)
void
Selection::set (vector<RegionView*>& v)
{
bool had_regions = !regions.empty();
clear_regions ();
if (Config->get_link_region_and_track_selection()) {
clear_tracks ();
// make sure to deselect any automation selections
clear_points();
if (had_regions) {
/* there were regions before, so we're changing the
* region selection (likely), thus link region/track
* selection. relevant tracks will get selected
* as we ::add() below.
*/
clear_tracks ();
// make sure to deselect any automation selections
clear_points();
}
}
add (v);
}