[Piano Roll] The deletion behavior in the piano roll
As I described here: https://github.com/musescore/MuseScore/pull/2420 ,
Replacing all notes with corresponding rests seems to be wired.
I think we should implement a partial range selection, a smart rests replacement ( replacing with the least number of rests), or just an only deletion of notes, without adding rests.
What solution do you think is the best ?
Comments
I see no reason why deletion in the piano roll should work differently than deletion elsewhere. In fact, at some underlying level, I'd hope they use the same support functions. Currently, using normal editing functions (not the piano roll), deleting a range selection already does replace with a minimal set of rests (which is not necessarily correct - it will happily place a half rest across beats 2-3 of a 4/4 measure). On the other hand, deleting a list selection replaces with rests individually (which makes sense since there is no guarantee the notes are contiguous). Assuming trhe piano roll editor can have a simialr concept of range versus list selection, I'd expect the same results as for normal edits.
In any case, deletion of notes only - without replacing them with something is not an option. This would leave holes in the score - places where one note ends and then there is nothing to mark the gap before the next notes starts. Standard music notation does not allow for this of course. However, there are number of (sometimes extremely vocal) requests for a special delete command that not only deletes the note, but *also* takes some unspecified number of subsequent notes and moves them in time to fill the gap. We'd still need a rest to fill the gap now produced at the end of the passage that was moved earlier in time, of course. It's certainly a valid request, but again, I would expect this new special delete command (Ctrl+Delete, perhaps) would work the same in regular editing as in the piano roll.
In reply to I see no reason why deletion by Marc Sabatella
Since selection in the piano roll can be partial, we can't use the default range selection as it is.
But we can make it work when all the notes in a particular range of time are selected. Except for this case, we delete individual notes. Does this sound good?
In reply to Since selection in the piano by luyikai
Not sure what distinction you are making between "partial" selection in piano roll versus list selection - I'm not familiar enough with the piano roll to know what options are available. At some level, range and list are really the only kinds of selections I know abut, so I would have to assume what you are talking about translates into one of those. Can you give me a series of steps to follow to demonestrate what you mean?
In reply to Not sure what distinction you by Marc Sabatella
Like, this selection is technically a partial selection. Some notes at the same time can be not selected
In reply to Like, this selection is by luyikai
So how is this different from a list selection? I'm asking this out of ignorance - like I said, I don't know much about how the piano roll works.
In reply to So how is this different from by Marc Sabatella
Ahh, sorry I misunderstood . it's a list selection actually
In reply to Ahh, sorry I misunderstood . by luyikai
but as long as we can specify a range, it surely *can* reduce the number of rests. That was what I meant
In reply to but as long as we can specify by luyikai
I just noticed that *a partial range selection* means nothing, since I said "smart deletion". Sorry...
In reply to but as long as we can specify by luyikai
I just noticed that *a partial range selection* means nothing, since I said "smart deletion". Sorry...
In reply to So how is this different from by Marc Sabatella
My concern is just that we be consistent. For two reasons: 1) user will be unpleasantly surprised if deleting ntoes does one thing normally but something different in piano roll, and 2) having two different implementations of the delete operation means twice as much code to maintain, twice as many opportunities for bugs. So on the assumption that the selections in the piano roll realy do work out to the equivalent of range or list selections, then I think both the user and the development team are better served if we use the same implementation of the delete operation.
In reply to My concern is just that we be by Marc Sabatella
As I said before, "We can make it work when all the notes in a particular range of time are selected. Except for this case, we delete individual notes. Does this sound good?"
This can be the nearest behavior, while we can let selection always work as a list selection, which is also a natural way. Which do you think is better?
In reply to As I said before, "We can by luyikai
Again, I think deleting notes within the piano roll should work exactly the same as deleting notes normally, and should use the exact same code to implement it. At least, I see no reaosn to think this should not be so.
In reply to Again, I think deleting notes by Marc Sabatella
Currently, the piano roll can only do a list selection. Then, I have to apply a range selection to the piano roll when all the notes in a particular range of time are selected. I think this is the nearest.
In reply to Currently, the piano roll can by luyikai
The reason why I say *nearest* is because the piano roll can only show notes and events
In reply to Currently, the piano roll can by luyikai
OK, now I think I understand.
Since it is currently a list selection, I think it needs to behave like a list selection. But if there is a way to implement range within the piano roll, so much the better.
In reply to OK, now I think I by Marc Sabatella
Alright, I'll try that
Why do I see only 1 voice in the piano roll if I write a piece with more voices
I like to see them all together, can it be?
In reply to Why do I see only 1 voice in… by Ingrid.Sterckx…
The piano roll editor only edits one staff at a time. One staff is a "keyboard model" -- any note can be on or off, no more -- that's why there's a keyboard at the left. If other staves were involved, that wouldn't be so -- although one can CERTAINLY imagine multiple piano-roll editors windows open at the same time for different staves (which wouldn't be "all together", but would be better than now).