Allow setting notehead scheme on a note-by-note basis in the Inspector
Currently one can assign a notehead scheme to a staff only. Using staff change elements, this can be achieved on a per-measure basis.
In educational scores, it is not uncommon to only use the named notehead for the first occurrence of a given note; something currently not possibly within MuseScore.
The idea is to allow setting the notehead scheme on a note-by-note basis using the inspector.
A possible easier in-between step would be to at least expose those notehead symbols within the current listing (as is already the case for 7-shape noteheads). The downside there is that the notehead doesn't automatically update when the pitch is changed; but it would allow us to create the desired end result without having to resort to the symbols pallet (and manual placement involved in that workaround approach)
Comments
See https://github.com/musescore/MuseScore/pull/5332.
Fixed in branch master, commit 4c0db9b19b
_fix #294542: Allow setting notehead scheme on a note-by-note basis in the Inspector
Resolves: https://musescore.org/en/node/294542.
Up until now, notehead scheme has only been a StaffType property. If a Note is going to have its own notehead scheme, it seems fitting to do a bit of reorganization. Here is a summary of the changes made:
- Moved enum class NoteHeadScheme to NoteHead::Scheme, alongside NoteHead::Group and NoteHead::Type.
- Added HEAD_AUTO as a possible value for NoteHead::Scheme.
- Moved scheme2userName(), scheme2name(), and name2scheme() from class StaffType to class NoteHead.
- Renamed Pid::STAFF_NOTEHEAD_SCHEME to Pid::HEAD_SCHEME. This change is reflected in the Plugin API, with Element property staffNoteheadScheme being renamed to headScheme. This should not break too many existing plugins, because the NoteHeadScheme enum values have never been exposed until now. Speaking of which,
- Exposed the NoteHead::Scheme enum values to the Plugin API as NoteHeadScheme.HEAD_AUTO, etc. And finally, (and the main point of all of this):
- Added a property of type NoteHead::Scheme to class Note, and exposed it via the Inspector. If set to HEAD_AUTO (the default), the StaffType’s noteHeadScheme will be used. Otherwise, this will override the StaffType’s noteHeadScheme._
Fixed in branch master, commit 887f745b20
_Merge pull request #5332 from mattmcclinch/294542-notehead-scheme
fix #294542: Allow setting notehead scheme on a note-by-note basis in the Inspector_
Automatically closed -- issue fixed for 2 weeks with no activity.