GSoC 2018 - Beginner Mode and Tutorial Creation - Week 3

Posted 1 year 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

  • Add Default Menubar

    • At first, the menubar would not update when switching to Basic or Advanced workspaces. Now, it rebuilds the menu based on the original menu. Currently, it is all hard-coded in two places. I've brainstormed with MarcSabatella and am thinking of adding a XML file of just the menu to load from.
  • Separate global and custom preferences

    • Instead of loading custom preferences into the global preferences, there is now a lookup to avoid losing the original preferences.

What had issues

  • How to do preferences
    • When I built up the preferences, it was all handled within preferences dialog instead of combining it with the workspace (creating a workspace dialog). I'm going to be adding the workspace dialog this week.

What is next

  • Getting my PR merged

    • Hopefully, I can get my PR merged to help fully flesh out the workspace toolbar customization
  • Adding a workspace dialog

    • Currently, the workspace dialog is a simple Yes/No message box with a text box. I am going to expand it to allow users to save different parts of the application to the workspace.
  • Another PR

    • This PR would be for my current branch (located at the bottom of this blog). I don't expect it to be merged, but I at least want it started.

Question for the Week

  • Upon adding or removing components saved to the workspace (toolbar, menubar, preferences, or GUI), should it be immediately deleted from the workspace file? Or should it be just deactivated for easy loading later?

Thanks,

Joshua Bonn
GitHub: https://github.com/JoshuaBonn1
Current Branch: workspace-expansion


Comments

Answer of the Week: Changes to the workspace needs to have someway to save them and the user know that the changes were made. Currently the changes are silently made when the program is properly shut down. If there is a crash or power outage and the program closes unexpectedly, changes to the workspace are currently lost. PITA.