How is this possible?

What if we add a new “Blocks” dock where you can add or delete blocks, and it has the visibilty eye and lock like the groups. So adding a new block adds the basepoint. for the block. You would be able to show / hide, lock / unlock a block. Selecting the row of the blocks selects which block is active. i.e. sets the cursor pointer in the History to the end of the block. Something to be worked out.

The structure of the xml could be simplified. It would be like:

< pattern >
    < blocks > // represents the full history
        < block name = "block1" visible = "false">
           ... // block 1 tools
        < /block >
        < block name = "block2" visible = "false">
           ... // block 2 tools
        < /block >
        < block name = "block3" visible = "true">
           ... // block 3 tools
        < /block >
    < /blocks >
    < modeling >
       ...
    < /modeling >
    < pieces >
       ...
    < /pieces >
    < groups >
       ...
    < /groups>
    < images >
       ...
    < /images >
< /pattern >

In the basepoint tool there could be a an “anchor point”… where you could anchor the basepoint to another point on the board… or “None” of you want it to float. For ex: Say we have block A and block B… you anchor block B to point A1 in block A. Moving block A also moves block B. Block B is prevented from moving by moving basepoint B as it’s anchored to A1 in Block A.

The main thing to work out would be converting from the current schema to a new schema, but it would automatically solve this topic’s question:

4 Me gusta