Simplify Note Groups UI's miniscore by removing timesig, removing irrelevant initial clef, setting to 1-line staff

• Feb 18, 2017 - 04:44
Reported version
2.2
Type
Graphical (UI)
Severity
S1 - Blocker
Status
closed
Regression
No
Workaround
No
Project

happens in 2.1.0 5b4f256 and 3.0dev fade47128.

The UI for Note Grouping (in either Time Signature Properties or for Creating New Time Signature in Master Palette) does not render the symbol for non-numerical time signatures, and instead just displays the equivalent numerals:

time-sig-note-groups-ui-not-reflecting-non-numerical-time-sig.png

Expected behavior is that the Note Grouping UI uses the symbol if used. This is a minor bug.


Comments

I discovered the reason why the UI doesn't display as symbol. It is because class NoteGroups only stores the time signature as a Fraction. So the constructor has to create a TimeSignature from that Fraction. I'm going to modify this class so that it stores a TimeSignature instead of a Fraction.

nevermind...not working out easily (realized that "Other" time sigs are simply TimeSigType::NORMAL but with symbol for numerator text). Now I'm going route of having NoteGroups store a pointer to timesig instead of holding the fraction inside itself.

hmm...strange, I notice TimeDialog has private pointer TimeSig* timesig, but that is never used. So what I said above won't quite work considering this pointer is never assigned to anything in the first place.

Sure enough...deleted that, and the thing still compiles and seems to work...so that must have just been a stray unneeded private variable.

Title Time Sig Note Grouping UI does not use symbol of non-numerical time sig (i.e "Common" or "Cut-time") Time Sig Note Grouping UI does not reflect use of symbol or custom text for num/denom

Acutally...there seems to be more problems with that note_groups UI, since it is not able to display custom text for num/denom either:

Screenshot (127).png

I'm almost at the point now where I think should get rid of that time signature in the beam properties if not being reflective at all.

Title Time Sig Note Grouping UI does not reflect use of symbol or custom text for num/denom Time Sig Note Grouping UI does not reflect use of symbol or custom text for num/denom, or number of staff lines or clef type

I'm noticing more problems with that note groups ui... It doesn't even reflect the number of lines in the staff that it is modifying (in below example, only 1 staff line in the drum part, but the UI shows 5 lines). Also Doesn't show the same clef:

Screenshot (128).png

I'm getting tired of this...I'm actually thinking the simplest solution is to just render the little mini scores in the UI with a 0-line staff and without a clef or keysig. Just to prevent any confusion, so is at least "correct" at what is is displaying.

It seems for the UI to make sense when inside of the Master Palette's Time Signature editor, that there should be no clef displayed. I'm going to just make a one line staff too, so makes sense in all contexts (user isn't concerned about pitches in this UI anyway).

Title Time Sig Note Grouping UI does not reflect use of symbol or custom text for num/denom, or number of staff lines or clef type Simplify Note Groups UI's miniscore by removing timesig, removing irrelevant initial clef, setting to 1-line staff

Ok, I've done the following to the note group UI miniscores:

  1. removed the timesig, since they were never obeying the defined appearance (note that this is a much simplified solution than trying to have this note UI obey the custom text)
  2. set the staff to 1-line only
  3. removed the initial clef (since clefs are irrelevant for this UI)
  4. set the pitch to F, so render on that single line
  5. set the beams to force up (instead of default auto which would be down)
  6. edited style to have starting barline (so would look like a single measure

Here is PR: https://github.com/musescore/MuseScore/pull/3004

So now it looks like the following in 3.0:

Screenshot (129).png

But note that the reason why the barlines are screwed up here is because #174966: Single Staff Barlines render incorrect start & stop ypos. The starting barline should not span to the next staff (for some reason as I reported there they are set to span to next stave, which will cause problems). And the ending barline is not displayed because it is trying to draw a vertical line of 0 height, I believe. But should look correct if added to 2.1 since 1-lines staff work in that version.

Status (old) patch (code needs review) fixed

Fixed in branch master, commit 2638ca79cd

fix #174831 simplify note group UI's mini score

Previously included a clef, even though clef is irrelevant for this UI, and would not reflect the clef of the time sig's staff anyway, so I've removed.

Previously included an explicit time signature, but that time sig never reflected the designated symbol or custom text for num/denom, so I've removed that time sig for simplity from this UI.

Previously had 5-staff line, but since only dealing with beam properties, pitches are irrelevant, so 1-staff is sufficient.