Properties are also sorted in alphabetical order for easier identification.
No attempt made to evaluate what to include and what to exclude from documentation: anything which is currently documented is retained. Case by case decisions can always be made.
Also completed update for `Accidental`.
or "enum class : signed char" or even "enum class: short", whatever/whenever feasible on all exsting "enum class" that don't have it yet, also fixing some signed vs. unadorned char. This
should reduce the memory footprint.
reformatting, removing some comments that are irrelevant to plugin
framework in a way that DoxyGen should still find them, documenting the
enums and fully qualify all types that are specific to MuseScore,
In addition to the score-wide style (which is kept without changes), naturals for individual key sigs are controlled by a previous section break: if the previous measure has a section break, naturals are always hidden; otherwise they follow the score settings.
The KeySig::_showNaturals member var is removed, as well as all the code involving it. This should bring a substantial simplification of the matter, while keeping the possibility to control individual key sig instances.
A partial regression is introduced for 1.x scores, which did not have the concept of section break: they will show naturals originally hidden, until the proper section breaks are not added (which it likely to be done anyway, if the score contains several pieces).
When a key sig changes, no natural is ever displayed, regardless of the "Hide naturals" property of the key sig.
Corrected by:
- adding methods to KeySig to locate the prev and next key sigs and update naturals accordingly when a key sig is added or removed
- in Score::addElement(), Score::removeElement() and undo's ChangeElement::flip() by calling the relevant KeySig method
Notes:
1) Covers updating naturals in following key sigs, if a previous key changes.
2) Fully integrated in undo
3) The fix is already predisposed to cope with a score style setting for natural display style: none, before, after accidentals. Until this style is implemented, the relevant code is commented out.