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/midi_playlist.cc | |
parent | 11e50fe0c5f441f8d017529a62ac4c8eeb6403c2 (diff) |
SoloSelection: libardour part.
Diffstat (limited to 'libs/ardour/midi_playlist.cc')
-rw-r--r-- | libs/ardour/midi_playlist.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/midi_playlist.cc b/libs/ardour/midi_playlist.cc index 6afde35427..39d964a753 100644 --- a/libs/ardour/midi_playlist.cc +++ b/libs/ardour/midi_playlist.cc @@ -134,6 +134,12 @@ MidiPlaylist::read (Evoral::EventSink<samplepos_t>& dst, std::vector< boost::shared_ptr<Region> > regs; std::vector< boost::shared_ptr<Region> > ended; for (RegionList::iterator i = regions.begin(); i != regions.end(); ++i) { + + /* check for the case of solo_selection */ + bool force_transparent = ( _session.solo_selection_active() && SoloSelectedActive() && !SoloSelectedListIncludes( (const Region*) &(**i) ) ); + if ( force_transparent ) + continue; + switch ((*i)->coverage (start, end)) { case Evoral::OverlapStart: case Evoral::OverlapInternal: |