View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000052||MAIDENS||Core Application||public||2020-04-28 21:34||2021-07-18 15:55|
|Platform||All||OS||Windows & macOS||OS Version||all supported|
|Target Version||1.5||Fixed in Version||1.5|
|Summary||0000052: Strange behaviour selecting wrong Note node|
|Description||When building a chord, after adding a new Note child to the cluster and editing its Pitch using the Editor, the selection, in the Project, Editor and Score stays on the Note node with the previous pitch (provided there is one). See the "Steps to Reproduce" for more insight.|
|Steps To Reproduce||1. In a blank score, add a Cluster in Voice 1 of Measure 1, and a Note node to it. You should get a fourth/quaver with the pitch of middle C.|
2. Add another Note node to the same cluster. The score will display a "unison" Cluster, sort of a note with two noteheads, both on the pitch of middle C; one of them will be selected;
3. WITHOUT changing the current selection, move the selected Note node's pitch from "C" to "G" in the Editor.
RESULTS: all panels keep the selection on the "C" Note node of the Cluster, whereas the "G" Note node should be selected.
|Tags||OSX, score editing, Windows|
On a side note, when using the "Transpose..." macro, with the "Keep existing" option enabled, new Note nodes are added in strange (possibly reversed) order, and the 1:1, score to model correspondence is broken, which results in erroneous selection (clicking a Note node in the score selects a wrong Note node in the Project and Editor).
This does not happen when adding/editing Note children by hand.
Note elements are not directly annotated in the ABC transport layer. Their DataElement score index is inferred based on their relative pitch, i.e., the lowest note is assumed to be at index 0, and that index is increased by each higher note. In order to make this reliable, Note elements are reordered by their pitch as the user adds, edits or deletes them. This has, historically caused quite some trouble.
A better approach would be to actually drop Notes representation as individually selectable objects: Note children would become a property of the Cluster Object, and displayed by the Editor as such; the Score would not allow note heads to be selected anymore, nor would the Project Tree. The virtual keyboard in the Editor would work in "sticky mode", thus alowwing for an arbitrary number of Notes to be added or removed to / from the current Cluster, simply by "toggling" the respective key. There remain a number of UI solutions to be found, such as starting ties from individual notes, or accidental spelling, or note-based articulations (is there such thing?) for individual notes. As a bonus, this approach would also provide faster speed for entering music.
||Worked around by forbidding same-voice unisons: added Notes to non-empty Clusters automatically shift up to prevent colision with existing pitches, and user is forbidden to set a Note's pitch to the same pitch as an existing Note's in the same Cluster (an error message shows and the edit operation is denied).|
|2020-04-28 21:34||administrator||New Issue|
|2020-04-28 21:34||administrator||Status||new => assigned|
|2020-04-28 21:34||administrator||Assigned To||=> administrator|
|2020-04-28 21:34||administrator||Tag Attached: OSX|
|2020-04-28 21:34||administrator||Tag Attached: score editing|
|2020-04-28 21:34||administrator||Tag Attached: Windows|
|2020-05-01 11:38||administrator||Note Added: 0000016|
|2021-02-01 19:03||administrator||Product Version||1.4.9 => 1.5|
|2021-02-01 19:03||administrator||Target Version||1.4.9 => 1.5|
|2021-06-07 15:01||administrator||Priority||normal => high|
|2021-07-02 12:58||administrator||Note Added: 0000036|
|2021-07-02 13:00||administrator||Note Edited: 0000036|
|2021-07-02 16:29||administrator||Note Edited: 0000036|
|2021-07-02 16:33||administrator||Status||assigned => resolved|
|2021-07-02 16:33||administrator||Resolution||open => fixed|
|2021-07-02 16:33||administrator||Note Added: 0000037|
|2021-07-18 15:55||administrator||Fixed in Version||=> 1.5|