diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2018-02-11 09:39:36 -0600 |
---|---|---|
committer | Ben Loftis <ben@harrisonconsoles.com> | 2018-02-11 09:39:36 -0600 |
commit | e6da4c4846cd3097e2393f0e43016b870e7cf592 (patch) | |
tree | f54b4f56ab2b39a4c91bb5e6e0141031b8731566 /libs/ardour/region.cc | |
parent | 11e50fe0c5f441f8d017529a62ac4c8eeb6403c2 (diff) |
SoloSelection: libardour part.
Diffstat (limited to 'libs/ardour/region.cc')
-rw-r--r-- | libs/ardour/region.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libs/ardour/region.cc b/libs/ardour/region.cc index 37244c0634..fd7a693128 100644 --- a/libs/ardour/region.cc +++ b/libs/ardour/region.cc @@ -216,6 +216,7 @@ Region::register_properties () , _transients (other->_transients) \ , _transient_analysis_start (other->_transient_analysis_start) \ , _transient_analysis_end (other->_transient_analysis_end) \ + , _soloSelected (false) \ , _muted (Properties::muted, other->_muted) \ , _opaque (Properties::opaque, other->_opaque) \ , _locked (Properties::locked, other->_locked) \ @@ -439,6 +440,25 @@ Region::set_name (const std::string& str) } void +Region::set_selected_for_solo(bool yn) +{ + if ( _soloSelected != yn) { + + boost::shared_ptr<Playlist> pl (playlist()); + if (pl){ + if (yn) { + pl->AddToSoloSelectedList(this); + } else { + pl->RemoveFromSoloSelectedList(this); + } + } + + _soloSelected = yn; + } + +} + +void Region::set_length (samplecnt_t len, const int32_t sub_num) { //cerr << "Region::set_length() len = " << len << endl; |