Copy Constructor for notes and chords in plugins
If you want to move a note from one chord to another or from one voice to the other you have the natural workflow:
1. Detach the note from the old chord /voice, i.e. make a copy of it and remove it from the old place
2. Add the copy, or detached note, to the new place.
In MuseScore you have to construct a new note (with default properties) and manually copy over the properties exhibited. With this you loose most musical properties of the origin.
It would be of much help to extend the plugin surface:
A new Note can be created with:
note = new Note();
note = new Note(score);
where score is a Score object
my_note = new Note(existing_note);
where existing_note is an object retrieved (by Chord.note(index) for instance).
The newly created object my_note has exactly the same properties as existing_note.