Over the past 3 months, I have worked to improve how instrument changes are implemented in MuseScore, to make them more user friendly, and more powerful. I have completed a lot of work in this time, and made many improvements. This would not have been possible without the help of my mentor, James Thistlewood, and the other developers of MuseScore, who have been incredibly helpful with their knowledge of the project in keeping me pointed in the right direction.
These past few weeks I have been busy with the Edinburgh Fringe Festival, but I have still managed to get a lot of work done. After finishing off with instrument change warnings, I started work on allowing changing to unpitched percussion staves. My initial thought was to add a staff type change object to the instrument change when necessary, but this provided a lot of complications when copying and pasting, as the user would be able to change the propertiesRead more
My project for GSoC 2019 is Palette Accessibility and this post gives a brief description of all the work that I have done during this time period. The new Palette is designed using a QTreeWidget and it can provide the Musescore users to quickly access the elements by utilizing the ability of the hierarchical view. My idea was to implement keyboard navigation functionality to the palette. Before, we get intoRead more
Hi! This post is a summary of the work that was done for my GSoC 2019 project: Chord Symbol Playback.
This project aims to improve the experience of working with chord symbols in scores. Without being able to hear the harmony denoted by the chord symbols, it can be difficult to get a full idea of what a work of music might sound like in practice.
In my original proposal I hoped to, at minimum, solve aRead more
Hi! This post is a summary of my Google Summer of Code project, and it also serves as an introductory material linked in The GSoC project page.
The project is devoted to improving the plugin facility of MuseScore, and more specifically, automating the process of downloading and installing MuseScore plugins. The above project page already gives a good explanation for its purpose.
This is a video demo demonstrating all major features the project covers.
I began by openingRead more
Work Planned To Do:
Complete creating a right-Click Menu Option and also make the back-end logic for each of the options for the context Menu
I have added the right-Click menu option for the palette item and also for the elements within each palette. I have made this by reimplementing the conextMenuEvent() of the palette to the PaletteList which provides the option to customize the paletteCellItem or the elements and also reimplementing the contextMenuEvent() of the paletteBoxButton toRead more
This week I still managed to add more comments and do more code cleaning. I must admit these were not done completely in previous days, partially because some functions are being added and renamed.
I did some fixes, too. One small but interesting one among them is, the space between the following QLabel and QTextEdit, was not constant when we switched between plugin items and package items. I fixed this by setting a minimum width value to the QLabel onRead more
We're almost done!
This week was a lot of cleanup and making sure everything is good and cleaning up the final bits. That means writing a lot of tests to make sure everything will be good going forward and for new developers to work with. On the user side of this week, it was fairly uneventful, although there is some stuff to hopefully look forward to coming soon :)
Sometime in the next week, I willRead more
Work Planned To Do:
Complete the drag and drop functionality for the new palette. I also planned to work on creating the Menu option for each palette items.
Completed doing the Drag and Drop functionality. It seems that I have missed reimplementing the mousePressEvent to get into the Drag and drop function last time, which I thought Qt will automatically handle. With the help of my mentor, I was able to finish implementing the drag and drop functionality.Read more
We are going into the final week.
What I've done
A small improvement in download link analysis.
One more aspect of compatibility hint is added and checked, which makes the fetching procedure more stable.
Remove the __MACOSX folder in some downloaded archives when installing plugins.
The folder exists in some archives generated by Mac computers, and is unwanted in Windows, (and I guess, unwanted in Mac, too...), and causes an incorrect item displayed in Plugin Manager's tree widget.
Also, IRead more