fix #279062: re-implement instrument option for hide when empty

This commit is contained in:
MarcSabatella 2018-12-06 23:25:09 -07:00
parent 55e0dea577
commit 30dbe42ac4

View file

@ -1254,10 +1254,14 @@ void Score::hideEmptyStaves(System* system, bool isFirstSystem)
for (int i = 0; i < part->nstaves(); ++i) {
int st = idx + i;
foreach (MeasureBase* mb, system->measures()) {
for (MeasureBase* mb : system->measures()) {
if (!mb->isMeasure())
continue;
Measure* m = toMeasure(mb);
if (staff->hideWhenEmpty() == Staff::HideMode::INSTRUMENT && !m->isMeasureRest(st)) {
hideStaff = false;
break;
}
for (Segment* s = m->first(SegmentType::ChordRest); s; s = s->next(SegmentType::ChordRest)) {
for (int voice = 0; voice < VOICES; ++voice) {
ChordRest* cr = s->cr(st * VOICES + voice);