Development update (September 8)
Finally a commit with some major new feature: Piano roll tracks.
Piano roll tracks
This isn't exactly an distinguishing feature of noisicaä (as the score tracks would be), but a pretty standard feature of a DAW, so it's good to have.
For now I just implemented the most basic editing features to make it useful. There's no editing of CC events, no recording, no importing of MIDI files. One editing feature, which I would consider "basic", is still missing though: copy & paste. There is some clipboard support in other track types, but I'm not happy with it, so I didn't want to add more cruft to that. The next thing I want to tackle is a proper design of the copy & paste system, which should be ready for current and future use cases.
Some minor UI tweaks
- The position of the splitter between the track list and the graph canvas is now persisted.
- The track list stays centered when changing the time scale (
ctrl-right- hmm... that's pretty well hidden...).
- Tracks are now
QWidgets, which simplifies the UI event handling and allows to use the existing
PianoRollwidget to be used for the MIDI segments.
- Extended the existing
PianoRollwidget (as introduced for the MIDI Looper node) to support editing and multiple MIDI channels.
- The existing
PianoRollProcessorhas been extended to handle multiple segments, so it can be used by the new
PianoRollTrack, while keeping compatibility with existing uses by
- The tool-based UI event handling has been streamlined.
- I switched to using
QActions with shortcuts, instead of explicit keyboard event handling, to trigger keyboard shortcuts (after I figured out how to make that work properly).