> The easiest way seems to be to implement Jianpu the same way as the > TabStaff was implemented. > So I can just add JIANPU in the StaffGroup type and add variations > specific to Jianpu in some 20-25 classes. > enum class StaffGroup : char { > STANDARD, PERCUSSION, TAB > }; >
Sounds like a good plan indeed. > The TabStaff seems to have its own staff and notes apart from the standard > staff, since it's of Staff class itself. > How do standard staff and tab staff share their notes? > Or they have their own copies of notes? > Another question: > Can user directly enter/edit notes in the tab staff and are the changes > reflected automatically on the standard staff? > It's more or less the same question. User can choose to have staves linked to each other or not. If you create a score with one staff, you can go to Edit > Instruments, select a staff and click "Add linked staff". You will see that another staff is added and if you enter music in one, the other will be changed too. The same applies for a standard staff and a tablature staff, but also for a staff in the main score and a staff in one of the linked parts. See https://musescore.org/en/ handbook/part-extraction Each staff does have its own copy of the notes but, if the staves are linked, the staff and the notes are linked via ScoreElement::_links and Staff::_linkedStaves. hope it helps, lasconic
------------------------------------------------------------------------------
_______________________________________________ Mscore-developer mailing list Mscore-developer@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mscore-developer