Ok, lets see what I’ve done this week. 🙂
First of all I finished every aspect of the next/prev element command, so the only thing that remains to be done for navigation is the next annotation/articulation command, but as discussed in the previous post I will implement this after the screen reader feedback.
1.1 What I’ve done
– Fixed all the problems with the barlines. I know I said last week that I only have to test the navigation for barlines, but when I did, I discovered that it didn’t cover all the use cases, so I had to find a more general implementation. Now everything works as expected
– Refactored the functions. There was a lot of duplicated code in two huge functions, so I moved some of it in the segment object, creating three smaller functions and now the code is much more easier to read and understand.
– Made the canvas adjust its position during the navigation
– Fixed the coding style
1.2 What else needs to be done
– As I said, the only thing that needs to be implemented is the next annotation/articulation command.
2. Screen reader feedback
As I mentioned in the proposal a very important part of my project is making the screen-reader tell the score to visual impaired musicians. After talking to Marc I think I found a good solution in order to do this. First of all I will implement an accessibility interface for the status bar using the accessibility API provided by Qt like this example  and after that I will make the select command populate the status bar with all the informations that the user needs.
“Select note 1 of 3 Pitch: C4 Duration: 8th note Bar: 4 Beat: 1”
I’ve started doing the reasearch for how to implement this, I’m playing with the above example and reading the documentations provided by Qt for the accessibility API for QAccessibleInterface, QAccessibleObject and QAccessibleWidget, but I don’t have yet anything functional. Hopefully, if everything works as planned I should have the status bar working by the end of the week.
3. Bug fix
– I also fixed this bug: http://musescore.org/en/node/24243
-See Pull Request here: https://github.com/musescore/MuseScore/pull/1027
See you next week! 🙂