GSoC 2018 - Beginner Mode and Tutorial Creation - Week 4

Posted 3 years ago

This is my weekly update on my Google Summer of Code project. There will be three parts of this blog post: what I did, what had issues, and what is next. Then, I will end it with a question that I need answered for part of the project.

What I did

  • Added a workspace dialog

    • Now, when creating a workspace, a dialog pops up with space for a name, 4 checkboxes for different components to save to the workspace (toolbars, menubars, GUI preferences, and GUI components). This also allows the workspace to be edited (including the name).
  • Save the state of the GUI

    • Qt has a function called saveState that saves the state of the GUI, including toolbar and dockwidget locations. Now, if the user wants, it saves the state to the workspace.
  • Remove the built in Basic and Advanced workspace

    • Instead of some built in actions, the basic and advanced workspaces are treated like all other workspaces. This also makes it easier to add other built in workspaces later on.
  • Fixed my branch

    • For a while, I've been unable to rebase my branch with the current master. So, I took some time and fixed it by squashing all my commits and removing my accidental changes to mscore/revision.h. Also, I took my commit from my open PR and added it to my branch so that it works fully.

What had issues

  • Translations
    • At first, by removing the built in workspaces, they were no longer translating. After fixing that, I realized the GUI wasn't translating and I have yet to figure that out.

What is next

  • Ironing out any bugs

    • Since most of the functionality is complete, I need to take time to iron out any bugs. I will work on testing the edge cases of my program
  • Getting a PR started

    • I know I've said this for a while now, but now I feel I will actually get a PR started so that I can move on.

Question for the Week

  • I have two main options of what I want to move onto next: on-screen help or a tour. Briefly, the on screen help would be like the handbook shrunken down and placed on the screen to assist. The tour would be a starting guide teaching the user how to use MuseScore. Which do you think I should do first?


Joshua Bonn
Current Branch: workspace-expansion-3


I think tour as well. I mentioned this elsewhere, but to me, that mostly means, providing the necessary framework for it, not necessarily the content - I figure others (including me) will be contributing to that. Not that your contributions wouldn't be welcome as well of course - just to say, it's designing and coding the framework that would be most valuable for GSoC. And I'd start by investigating what other programs provide.

The more I think about it the more I like the idea of the tour. Perhaps it will help (some of) those who refuse to read the handbook to understand how MuseScore works.