GithubHelp home page GithubHelp logo

flashblocks's People

Contributors

trun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

flashblocks's Issues

Error when connecting to older sibling

When dropping a block on an older sibling port that is already connected to a different parent the following error occurs...

ArgumentError: Error #2024: An object cannot be added as a child of itself.
    at flash.display::DisplayObjectContainer/addChildAt()
    at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::$addChildAt()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:5094]
    at mx.core::Container/addChildAt()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\Container.as:2258]
    at mx.core::Container/addChild()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\Container.as:2183]
    at com.flashblocks.blocks::CommandBlock/connectOlderSibling()[G:\Projects\flashblocks\src\com\flashblocks\blocks\CommandBlock.as:34]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:121]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:140]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:146]
    at com.flashblocks::Page/addBlock()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:50]
    at com.flashblocks::BlockDragLayer/onBlockDragComplete()[G:\Projects\flashblocks\src\com\flashblocks\BlockDragLayer.as:135]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks::Workspace/rebroadcastEvent()[G:\Projects\flashblocks\src\com\flashblocks\Workspace.as:267]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks.blocks::SimpleBlock/onMouseUp()[G:\Projects\flashblocks\src\com\flashblocks\blocks\SimpleBlock.as:154]

A simple example...

CONTROL:
  FUNC_A
FUNC_B

Drop FUNC_A such that...

CONTROL:
  // pass
FUNC_A
FUNC_B

...and the bottom port of FUNC_A connects to the older port of FUNC_B.

Error when editing an argument's value

ArgumentError: Error #2024: An object cannot be added as a child of itself.
    at flash.display::DisplayObjectContainer/addChildAt()
    at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::$addChildAt()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:5094]
    at mx.core::Container/addChildAt()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\Container.as:2258]
    at mx.core::Container/addChild()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\Container.as:2183]
    at com.flashblocks.blocks::CommandBlock/connectAfter()[G:\Projects\flashblocks\src\com\flashblocks\blocks\CommandBlock.as:37]
    at com.flashblocks.blocks::CommandBlock/connectAfter()[G:\Projects\flashblocks\src\com\flashblocks\blocks\CommandBlock.as:43]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:106]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:132]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:132]
    at com.flashblocks::Page/tryConnection()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:132]
    at com.flashblocks::Page/addBlock()[G:\Projects\flashblocks\src\com\flashblocks\Page.as:43]
    at com.flashblocks::BlockDragLayer/onBlockDragComplete()[G:\Projects\flashblocks\src\com\flashblocks\BlockDragLayer.as:141]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks::Workspace/rebroadcastEvent()[G:\Projects\flashblocks\src\com\flashblocks\Workspace.as:70]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks.blocks::SimpleBlock/onMouseUp()[G:\Projects\flashblocks\src\com\flashblocks\blocks\SimpleBlock.as:151]

Four command blocks were stacked vertically. When editing the argument of the final block in the stack the above error occurred.

Nested connections are "broken" when block is disconnected

Repro'

Repeat
  Forward

Disconnect the Forward block and place it on the page. Try to reconnect the forward block to the same nested port.

Expected: The Forward block should reconnect

Actual: The Forward block does not reconnect

Note that the any other block dragged onto the page can connect to the nested port. This leads me to believe the Forward block's before connection is not getting properly cleaned up.

block connections should be cleaned immediately upon disconnect

The primary purpose of leaving "dirty" connections in place while dragging is to facilitate snapping a block back to its original position if dropped on an invalid location. This same goal can be accomplished in one of two alternate ways.

  • Store the original, global x y position of the block upon drag start. "Drop" the block at the same coordinates if no valid drop target is found.
  • Store the original parent widget, block and port to which the block was connected. Re-do the connection if no valid drop target is found.

Error when dropping outside of all IWorkspaceWidgets

TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at com.flashblocks::BlockDragLayer/onBlockDragComplete()[G:\Projects\flashblocks\src\com\flashblocks\BlockDragLayer.as:150]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks::Workspace/rebroadcastEvent()[G:\Projects\flashblocks\src\com\flashblocks\Workspace.as:70]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks.blocks::SimpleBlock/onMouseUp()[G:\Projects\flashblocks\src\com\flashblocks\blocks\SimpleBlock.as:151]

Repro'

Forward
Forward

Pick up one of the Forward blocks and drop it on a non-widget (e.g. the TurtleCanvas)

Error when dropping blocks

TypeError: Error #1010: A term is undefined and has no properties.
    at com.flashblocks.blocks::ControlLogicBlock/onNestedBlockDisconnect()[G:\Projects\flashblocks\src\com\flashblocks\blocks\ControlLogicBlock.as:210]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks.blocks::Block/setDragging()[G:\Projects\flashblocks\src\com\flashblocks\blocks\Block.as:248]
    at com.flashblocks::BlockDragLayer/startDragBlock()[G:\Projects\flashblocks\src\com\flashblocks\BlockDragLayer.as:84]
    at com.flashblocks::BlockDragLayer/addBlock()[G:\Projects\flashblocks\src\com\flashblocks\BlockDragLayer.as:55]
    at com.flashblocks::BlockDragLayer/onBlockDragStart()[G:\Projects\flashblocks\src\com\flashblocks\BlockDragLayer.as:110]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks::Workspace/rebroadcastEvent()[G:\Projects\flashblocks\src\com\flashblocks\Workspace.as:269]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
    at com.flashblocks.blocks::ControlLogicBlock/onMouseDown()[G:\Projects\flashblocks\src\com\flashblocks\blocks\ControlLogicBlock.as:232]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.