Commit graph

6 commits

Author SHA1 Message Date
Paul Davis
5208fdce2c the continuing saga of MIDI note line geometry and the scroomer 2025-06-10 12:28:33 -06:00
Paul Davis
06593d1a79 pianoroll note labelling: pixel pushing, crash prevent, theme utilization for fonts 2025-06-03 23:17:53 -06:00
Paul Davis
024dedc446 pianoroll: clarify and resolve some issues caused by confusion over what type the _view member has 2025-06-03 12:14:21 -06:00
Paul Davis
e23fdd5b8c horrific hack to deal with pianoroll header (widget) single pixel misalignment currently not understood 2025-06-03 11:34:21 -06:00
Paul Davis
362672ac34 single pixel line, in themed "black" color, to divide B/C and E/F on piano roll header 2025-06-03 11:33:48 -06:00
Paul Davis
48dde40b4f share piano roll header across both GTK widget and Canvas item implementations
This also uses the new API exposed by MidiViewBackground so that the header simply re-uses
the same exact position & height values computed by the background for its note lines.

PianoRollHeaderBase is the base class with the shared implementation.

PianoRollHeader is the GTK widget derived class.

ArdourCanvas::PianoRollHeader is the canvas item derived class.

Both PianoRollHeader implementations have to implement various methods that gloss
over the differences between drawing and event handling in a GTK widget context
or in a canvas item context
2025-06-02 19:53:34 -06:00