pcb

Comment 5 for bug 699181

Revision history for this message
Traumflug (mah-jump-ing) wrote :

Tracking down things further, I think the next key in this adventure is click_cb() in action.c. This is called a moment after mouse down and does a decision:

- If the click isn't onto something selected, but onto something movable (Note.Moving == false, Note.Hit == true), mode is set away from ARROW_MODE to COPY_MODE or MOVE_MODE, both of which start moving something and draw an outline around tracks while doing so.

- If the click _is_ onto something selected (Note.Moving == true), instead of COPY/MOVE_MODE, PASTEBUFFER_MODE is engaged. Before doing so, the selected item is added to the pastebuffer, of course.

Both of these mode changes cause totally different behaviour in NotifyMode().

So, one question arising is: why is there a Copy mode if it's used for single copies, only? Looks like unneccessary code duplication. Move mode is required for dragging line ends.

The cause of this bug has probably to be searched in the question: why doesn't pastebuffer mode move names/refdes'? It does move independent texts.