GSoC 2019: Week 7
This past week I have been working on fixing the issues of the instrument change warning text. I first managed to fix the broken tests, which was a problem with how some of the methods I had written worked with linked scores. I then started working on changing the existing implementation of the text, which simply created a new staff text object, to a custom type called InstrumentChangeWarning. This has the advantage of allowing me to implement custom behaviour for this type without the risk of affecting other usage of staff text, as well as making the object easier to identify in code. It also allows the possibility of matching the style of the text with the instrument change text, which would generally be a lot more desirable.
Work done so far
After this week's work I feel this is a good place to summarise the work I have done on the project I have done so far.
- Adding an instrument change object automatically opens the instrument change dialog
- After the instrument has been chosen, the instrument change text automatically changes
- After the instrument has been chosen, the clef is changed automatically, if necessary
- After the instrument has been chosen, the key signature is changed automatically, if necessary
- If a key change is placed before one or more instrument changes, the key signatures for those instrument changes update too
- When an instrument change is placed, a warning is placed at the first note after it to remind the player to play the new instrument.
- If a note is added after an instrument change, before a subsequent passage, the warning is moved to that note.
The easiest way to show this is with some before and after gifs, showing how much easier it is to change instrument.
This next week, I will be working on having the instrument change text move after deleting the first note of the passage, and making the text style the same as the instrument change text.