File tree Expand file tree Collapse file tree 3 files changed +14
-11
lines changed Expand file tree Collapse file tree 3 files changed +14
-11
lines changed Original file line number Diff line number Diff line change @@ -553,7 +553,7 @@ double Measure::tick2pos(Fraction tck) const
553553// / Whether the measure will show measure number(s) when MeasureNumberMode is set to AUTO
554554// ---------------------------------------------------------
555555
556- bool Measure::showMeasureNumberInAutoMode ()
556+ bool Measure::showMeasureNumberInAutoMode () const
557557{
558558 // Check whether any measure number should be shown
559559 if (!style ().styleB (Sid::showMeasureNumber)) {
@@ -594,7 +594,7 @@ bool Measure::showMeasureNumberInAutoMode()
594594 }
595595}
596596
597- bool Measure::showMeasureNumberOnStaff (staff_idx_t staffIdx)
597+ bool Measure::showMeasureNumberOnStaff (staff_idx_t staffIdx) const
598598{
599599 IF_ASSERT_FAILED (staffIdx < score ()->nstaves ()) {
600600 return false ;
@@ -608,7 +608,7 @@ bool Measure::showMeasureNumberOnStaff(staff_idx_t staffIdx)
608608// / Whether the Measure shows a MeasureNumber
609609// ---------------------------------------------------------
610610
611- bool Measure::showMeasureNumber ()
611+ bool Measure::showMeasureNumber () const
612612{
613613 switch (m_measureNumberMode) {
614614 case MeasureNumberMode::AUTO:
Original file line number Diff line number Diff line change @@ -225,9 +225,9 @@ class Measure final : public MeasureBase
225225 Fraction anacrusisOffset () const ;
226226 Fraction maxTicks () const ;
227227
228- bool showMeasureNumber ();
229- bool showMeasureNumberInAutoMode ();
230- bool showMeasureNumberOnStaff (staff_idx_t staffIdx);
228+ bool showMeasureNumber () const ;
229+ bool showMeasureNumberInAutoMode () const ;
230+ bool showMeasureNumberOnStaff (staff_idx_t staffIdx) const ;
231231
232232 Chord* findChord (Fraction tick, track_idx_t track) const ;
233233 ChordRest* findChordRest (Fraction tick, track_idx_t track) const ;
Original file line number Diff line number Diff line change @@ -195,19 +195,22 @@ std::vector<TextBase*> MaskLayout::collectAllSystemText(const System* system)
195195 if (!mb->isMeasure ()) {
196196 continue ;
197197 }
198- for (const MStaff* mstaff : toMeasure (mb)->mstaves ()) {
199- if (MeasureNumber* measureNumber = mstaff->measureNumber ()) {
200- allText.push_back (measureNumber);
198+ const Measure* measure = toMeasure (mb);
199+ for (staff_idx_t i = 0 ; i < measure->mstaves ().size (); ++i) {
200+ if (measure->showMeasureNumberOnStaff (i)) {
201+ if (MeasureNumber* measureNumber = measure->measureNumber (i)) {
202+ allText.push_back (measureNumber);
203+ }
201204 }
202205 }
203- for (EngravingItem* item : toMeasure (mb) ->el ()) {
206+ for (EngravingItem* item : measure ->el ()) {
204207 const SysStaff* staff = system ? system->staff (item->staffIdx ()) : nullptr ;
205208 const bool staffVisible = staff && staff->show ();
206209 if ((item->isMarker () || item->isJump ()) && item->visible () && staffVisible) {
207210 allText.push_back (toTextBase (item));
208211 }
209212 }
210- for (const Segment& s : toMeasure (mb) ->segments ()) {
213+ for (const Segment& s : measure ->segments ()) {
211214 if (!s.isType (Segment::CHORD_REST_OR_TIME_TICK_TYPE) || !s.enabled ()) {
212215 continue ;
213216 }
You can’t perform that action at this time.
0 commit comments