Well.. finally fully moved; I guess it's time to stop screwing around and get back into hacking. Specifically Ardour, since I'm being payed to do so and all.
Looks like we don't have a fancy new cairo canvas to play with. Maybe it will be worth my time to do that first, but I'm going to do some fiddling with displaying MIDI data with gnomecanvas first to get a grasp on things. Wouldn't hurt to have some visually obvious clue that I am, in fact, actually doing something. This summer's project should be more rewarding than last in that sense; most of what I need to do is visual stuff which tends to be more fun since you have something nice and tangible at the end of the day.
Of course, displaying data is one thing. One relatively easy thing. Actually editing it on the other hand.......... that's where the "fun" (i.e. hard) part comes in.
I think a top-down (GUI->implementation) strategy is best here. The Grand Battle Plan(TM) goes something like this:
- Get MIDI data displayed in regions, notes visible as one canvas item (rect) per note
- Attach event signals from note canvas items (move, click, etc) to a set of stub methods that encompass all the editing operations
- Now there's a nice centralized area where all the editing operations need to be implemented
- Figure out how the hell to implement them (ie ???????????)
- Implement them (ie Profit!)