Better block placement for "display block definition"

Issue #63 resolved
Turgut Guneysu created an issue

Hi John,

When the display block definition option is selected, the resulting display is placed on top of the first block in the program.

If one is not careful, this creates a situation where one can click on any lower blocks of the displayed block ( anything other than the hat block) and separate it from the original sequence and inadvertently insert it into the one that is right underneath it. Yes it sounds like very unlikely, but it has happened to me several times in spite of my being aware of it. Things happen when one codes rapidly trying to fix problems ! 😱

For small block sequences this is not a big deal. But when the sequences are long, it is a chore to figure out what happened.

CTRL-Z reverts the insertion, but the UNDO is only one-level, and depending what else has happened before it, it is not always helpful.

My suggestion is to consider one of a few options:

  • if block locations are known by the IDE, then place the new expanded block into an empty area and scroll the screen there.
  • There seems to be about a 1cm blank margin on the left of the programming area. While not ideal, at least place it there so the top to bottom display of the blocks are visible and not totally overlapping the blocks underneath it.
  • Make CTRL-Z (UNDO) more than one level.
  • Change CRTL-Z such that it not only extracts the last inserted block and floats it attached to the mouse, but actually places it where it came from. This might be unnecessary, depending on the implementation of the previous option: multiple UNDO levels.
    Either way, an UNDO that restores BLOCK level integrity is crucial in a block-coding environment.
  • Consider a SNAP! like implementation where the block definitions are presented in a separate window but can exchange info with the main programming area. (My preference)

For your consideration.

TG

Comments (3)

  1. Log in to comment