Community Blog

GSoC 2020 Work Product: New and Improved Multimeasure Rests and Measure Repeats
2 months ago • 2 comments

Hello, all! This is the conclusion to my GSoC 2020 blog, summarizing and linking to my work for MuseScore over the past twelve weeks.

In brief, I added support for adjusting the style of multimeasure rests, switching to old-style multimeasure rests, preventing line breaks between selected measures, automatically numbering one-measure repeats, and creating two- and four-measure repeats with MIDI playback support and the ability to import from and export to MusicXML format.

The multimeasure rest code, which can be found

Read more
Isaac Weiss

GSoC 2020 - Tree Model - Work Product

2 months ago • 0 comments

Week 12 / Final Report

We have come to the end of the GSoC season for 2020, and this is my final report summarizing the results of my project, Tree Model for libmscore.

The main aim of the project was to formalise the tree structure of MuseScore’s objects and classes by adding a generic way to access children of an element (i.e. add a getChild(n) function to ScoreElement and derived classes). The secondary goal was to make use of

Read more

GSoC 2020: Albums, Summary

2 months ago • 2 comments



Google Summer of Code 2020, Albums, Summary

Albums Pull Request
All my Pull Requests during GSoC

Project Description

The goal of this project was to bring back MuseScore 2's Albums feature and improve on it so that it satisfies the needs of the huge MuseScore community. Albums allow users to create large works that consist of smaller ones. Things like songbooks/symphonies/studies can be represented as an Album. By using an Album for such a collection of pieces the user can

Read more

GSoC 2020 Week 12 Recap: Testing the Tests

2 months ago • 0 comments

Hello! We've reached the end (almost). The twelve weeks of coding are complete. Later this week I'll make a big post with a video summarizing the entire summer. For now, here's one last weekly recap.

Update from last week

I spent this week working on tests. The idea is to automatically warn future developers if they make a change that introduces a bug in something that was previously working. MuseScore has lots of tests in place for existing features, and

Read more

GSoC 2020: Albums, Week 12, Time well spent

2 months ago • 1 comment

Last weekly blog

Welcome to the last weekly GSoC Albums blog post. All good things come to an end, this summer included. But, I'll leave the real conclusion and roundup of this year's Google Summer of Code for the summary blog post. In this one, as always, I will update you with the latest improvements in the Albums feature.

Last week

Last week I continued my work on refining the UX and codebase. I rewrote a bunch of stuff, deleted

Read more

GSoC 2020: Albums, Week 11, Making the most out of this summer trip :^)

2 months ago • 0 comments

Greetings

Hello, MuseScore blog readers and dear followers of the Albums project. We are 2 weeks before the end of this year's Google Summer of Code. For that reason I've been working on improving the reliability and polishing the Albums for MuseScore. I am happy to report that things have been going well, there are significantly fewer bugs/crashes and a lot of small changes have been made to finalize the project.

Tomorrow I will livestream at around 16:00 BST. This

Read more

GSoC 2020: Tree Model - Week 11

2 months ago • 0 comments

Hello all! This is probably my second last blog post for my GSoC project.

Progress

This week I managed to change the ScoreView to a QAbstractItemView. First I went through the chart example project for the View in the Qt documentation, and then I tried to implement it in the mscore code. I made class ScoreView inherit from QAbstractItemView, and I had to implement some virtual functions to make it work properly.

I started by implementing indexAt which tells Qt

Read more

GSoC 2020: Tree Model - Week 10

2 months ago • 0 comments

Last week's update:

I added Tuplets and Spanners (ties, slurs, etc.) to the treeWrite() function and tried to reduce the diff with the previous code as much as I can, and here's what I ended up with.

So most of the file is matching now (about 80% of the lines are matching now), but still there are a lot of differences in the format.

To get it to this state I have only implemented the treeWrite() function in 7 functions

Read more

GSoC 2020 Week 10 Recap: MusicXML in Difficult Circumstances

2 months ago • 1 comment

What a week.

What a week.

Update from last week

One sweltering day in August, a well-loved MacBook went to sleep and never woke up. During the very week when I was over 300 miles away from my (non-Mac) secondary machine.

I am amazed at how much I was able to accomplish under the circumstances. I commandeered someone else's gaming laptop, set up a guest account, and immediately began downloading at least a dozen gigabytes of stuff (Visual Studio, Qt,

Read more