- Don't use QGraphicsView anymore. It was convenient, but got very slow for large sheets.
- Use widgets with custom paint method, just painting what's on the screen.
- Split sheet view into three separate widgets:
- SheetEditor with the sheet itself
- Static TimeLine at the top.
- Static TrackList at the left (not yet used for much).
- Rendering of Score measures is somewhat degraded...
- Batching of updates has been removed, but doesn't seem to be needed right now (Qt's batching of widget updates seems to do the trick well enough).
- Created separate package for SheetView related classes.
- I'm a slacker re unittests :(
- Player is per sheet (to make playback state management easier later on).
- Pipeline changes are tunneled through the Sheet object to each connected player.
- SheetView in the UI creates and owns the server-side player.
Needs async setup/cleanup for some UI objects.