Some observations.
I’m looking at how to translate this to a real case of graphical interface. Let’s say the case that is a horizontal roll piano. If you put a resolution of 256 per line, we can say that a line is 256 pixels (although this is very small), which is approximately 6 or 7cm on your screen (depending on the resolution). That is, to cover a pattern of 512 lines, this pattern would have a length of 256 pixels by 512 lines, which are 131072 pixels (6 cm x 512 lines is 3072 cm to cover a pattern). The graphical interface should have a huge zoom.
This in practice hinders the work flow, although it seems otherwise. The effective thing is to be able to insert and erase notes like a bullet, or change their position.
If you want to make millimeter adjustments to the length of the note or its position in the sequence, it can be grossly tedious with the mouse. It is even easier to select the line and modify its delay, as Renoise is designed. Unless you have a superzoom and be very fluid and easy to handle.
The other problem is the visible display of the notes, because each track contains 12 columns of notes. If you start putting notes with very long duration you are hiding other notes from other columns of notes. This is a real representation problem.
Honestly, I think that the only way to make a real piano roll effective for Renoise, is to respect the design of the tracker, which shows one note per line (the shot of the note and the stop of the note). Making slices on a line graphically is somewhat exaggerated. I refer to the control with the mouse.
On the subject of drag and drop notes it only makes sense to modify the shooting time or its duration, but not to change the tone. No need to drag and drop to change the tone.
Another thing that I consider important is that the mouse should not have several switches to change the way you edit, for example, a switch to divide a note. For what? Insert the same note tone in the middle and you’re done. For me, a true piano roll in this case is that which best fits Renoise’s design, not “a copy” of the pianorolls of other DAWs. The main reason is that you should be able to visually jump from the pattern editor to the Piano Roll and “see the same”, something equivalent. That you know where to go to rectify any value.
But I am aware that all of us can have several concepts of Piano Rolls for Renoise. But do not forget that a track contains 12 note columns, and that is necessary to represent it without hiding too much information. Now imagine representing several tracks.
With the API available, it is only possible to use “buttons” to represent the notes, because it will be necessary to color them. You can not make all the notes have the same color, because that is not understood! And bitmaps are not feasible here.