Mercurial > hg > svapp
comparison framework/MainWindowBase.cpp @ 190:68a0a2625a66
* Ensure solo works correctly when switching to a waveform that was
generated via an effects transform from another waveform that's in a
different pane (previously, switching to the generated version would
leave both playing)
author | Chris Cannam |
---|---|
date | Tue, 15 Jun 2010 10:39:06 +0000 |
parents | 32c13c46abd6 |
children | 302dae1f6016 |
comparison
equal
deleted
inserted
replaced
189:017206f2e4c5 | 190:68a0a2625a66 |
---|---|
529 View::ModelSet soloModels = p->getModels(); | 529 View::ModelSet soloModels = p->getModels(); |
530 | 530 |
531 View::ModelSet sources; | 531 View::ModelSet sources; |
532 for (View::ModelSet::iterator mi = soloModels.begin(); | 532 for (View::ModelSet::iterator mi = soloModels.begin(); |
533 mi != soloModels.end(); ++mi) { | 533 mi != soloModels.end(); ++mi) { |
534 if (*mi && (*mi)->getSourceModel()) { | 534 // If a model in this pane is derived from something else, |
535 // then we want to play that model as well -- if the model | |
536 // that's derived from it is not something that is itself | |
537 // individually playable (e.g. a waveform) | |
538 if (*mi && | |
539 !dynamic_cast<RangeSummarisableTimeValueModel *>(*mi) && | |
540 (*mi)->getSourceModel()) { | |
535 sources.insert((*mi)->getSourceModel()); | 541 sources.insert((*mi)->getSourceModel()); |
536 } | 542 } |
537 } | 543 } |
538 for (View::ModelSet::iterator mi = sources.begin(); | 544 for (View::ModelSet::iterator mi = sources.begin(); |
539 mi != sources.end(); ++mi) { | 545 mi != sources.end(); ++mi) { |