GSoC 2020: Albums, Week 8, Approaching our destination.

Posted 4 months ago

The end of stage 2

The time for the second evaluation of this GSoC project has come and with that, I bring you a bunch of updates and the long-awaited video that I promised you weeks ago. Let's get down to business now, shall we?

The updates

  • Added the option to include the absolute paths to the scores when saving the album.
  • Added the ability to edit the style of the movements in album mode.
  • Added an option to move score titles to the beginning of the next page instead of being placed at the bottom of the current page.
  • Rewrites for the libmscore part of the codebase (not yet done, but significant progress has been made), mscore part is next.
  • Added a bunch of new tests (they don't yet work 100% but they have already helped me improve the code quality).
  • Fixed score layout and element positions when in score mode, after having entered album-mode.
  • Fixed changing accidentals would not redraw the scoreview.
  • Various fixes to the layout and playback related to whether there is a contents page.
  • Improved score/album duration code.
  • Fixed crashes and oversights related to creating a new album.
  • Fixed selection highlighting in a movement not being removed when selecting an element of a different movement.
  • Improved album playback.
  • Fixed instrument sounds in album-mode.
  • Fixed a bug where the box surrounding the selected measure would not be displayed in Album-mode.
  • Improved behaviour when reordering tabs and closing/reopening scores.
  • Added the ability to change View for all scores in the Album.
  • When a score is removed from the Album the corresponding movement is removed from the Temporary Album Score.
  • Fixed crashes in the front cover and contents pages when the first movement did not have the required fields.
  • Improved handling of composer and lyricist names for the front cover (duplicates, new line characters, empty strings, all handled).
  • Fixed multiple crashes.

The future

This week I will complete my refactoring and rewrites. I will also complete my test-writing journey. After those 2 things, I will clean my main git branch. I also want to start adding some shortcuts. Finally, I will start working on implementing the ability to make changes to multiple scores at the same time.