GUI Related improvements and Command block requests

Issue #79 resolved
Turgut Guneysu created an issue

Hi John,

I don’t know what screen resolution a typical user uses on their computer monitors, but I operate at 1920x1080 in general and higher if a lot of screen area is required for the project at hand.

  • Under these circumstances, right/left black triangles that are found on some of the blocks are VERY HARD to select using a mouse pointer. For example, if one is in the process of defining a custom block and misses the little triangle at the header, then one ends up with a copy of the block definition floating on the code, only to be discarded or misplaced by an errant mouse click.
    Or if there is a block with multiple “triangle” fields that also contain variable blocks or expression blocks in them, and one mistakenly clicks on the left triangle instead of the right, very messy conditions arise with blocks being ejected out of the closed fields!
    These might sound like hard to believe, but it does happen enough to warrant complaining about it.

  • Similarly, TRUE / FALSE etc logic grouping is also problematic at times to set them to the desired way.

Is there a way to ENLARGE these?
OR
Is there a way to change the triangle definition area to larger than the actual triangle to enable easier selection?

I tried using temporary or (JIT) zoom; but microBlocks does not respond to mouse zoom actions. That would have been the most practical solution as far as I am concerned without changing much in the program. Interestingly, when I checked GP, which operates in a browser, it was possible to do mouse zoom in/out and overcome the problem.

I also tried zooming the Windows elements via display options (+125-175%), but that gets the entire screen too huge and it is only useful if made permanent even for a short while. Not very practical.

  • Another hard to get used to feature is the ELSE IF block’s T/F selection.
    If one places an actual CONDITION there, then it is similar to other ELSE IF blocks and easy to use. However, if it is to be used in its default condition as a T/F slider, then it is VERY CONFUSING to understand that it is a gate that controls the execution of that ELSE branch: TRUE = execute, FALSE = skip it !
    This behavior is unique to microBlocks; none of the MakeCode, Scratch, or Snap! have this feature and their ELSE IF don’t operate this way ! Although I see that it is inherited from GP.
    In itself, it is not that bad until one gets used to it. However, for new users, an unintended click on the T/F block and setting it to F leads to long search on why the ELSE code branch is not executing !

  • The very useful COPY TO CLIPBOARD feature does NOT exist when a second copy of microBlocks is executed. Thus copying code from the second copy to the first becomes impossible. If this is a bug, I’ll leave it to you to categorize it.

  • If at all possible, BROADCAST & WAIT block option would be very helpful in synching hardware related control code. I saw it in GP and thought it would be easy to implement here.

Looking forward to your feedback.

Comments (1)

  1. Log in to comment