[Summary] Restored Selection::set() method for time selection functionality. It should not clean the list of tracks time selection (range) is applied to.

This commit is contained in:
GZharun 2014-12-08 16:33:18 +02:00
parent 4868f1c81e
commit 01168cb436
2 changed files with 6 additions and 4 deletions

View file

@ -137,10 +137,12 @@ Selection::clear_tracks ()
}
void
Selection::clear_time ()
Selection::clear_time (bool clear_applied_tracks/*=true*/)
{
time.clear();
time.tracks_in_range.clear();
if (clear_applied_tracks) {
time.tracks_in_range.clear();
}
TimeChanged ();
}
@ -864,7 +866,7 @@ long
Selection::set (framepos_t start, framepos_t end)
{
clear_objects(); //enforce region/object exclusivity
clear_time();
clear_time(false); //do not clear tracks time selection is applied to
if ((start == 0 && end == 0) || end < start) {
return 0;

View file

@ -199,7 +199,7 @@ class Selection : public sigc::trackable, public PBD::ScopedConnectionList
* The Track selection isn't affected when ranges or objects are added.
*/
void clear_time(); //clears any time selection ( i.e. Range )
void clear_time(bool clear_applied_tracks = true); //clears any time selection ( i.e. Range )
void clear_tracks (); //clears the track header selections
void clear_objects(); //clears the items listed below