Not able to fully delete yusufcihan's Dynamic Component with Remove ID block

I have an initialized dynamic component with a speed and a heading. When I command that component be removed the ID is removed but the image, speed and heading will still remain. My temporary fix is to also set image visibility to false before remove ID block is used. Is this a memory leak? Is this an issue because the component was initialized?


What extension you used ?
And what is inside metEdgeCheck? Is there the right number ?
Remove id delete id from list or delete the component?

Unfortunately, the "Remove" block simply hides the component and removes it from the list of the created components. In the first versions of the extension, it was removing the component from the view instead of hiding it, but the behavior has changed since it was causing some problems that I don't currently remember.

I know it is a bummer and I also don't want to leave it as it is, but I'm no longer able to improve the extension as fast as in 4 years ago when the extension was first released.

1 Like

Well, you have still not yet published the beta version (2.2.3) that added functionality (from my PR) to also destroy a component...

Did you find a work around? IE another extension that deletes components?

I tried out compcreator as it showcased a remove block but it doesn't seem to be deleting yusufcihan's Dynamic Components.

This one ?

So probably best to keep the generated ID's and recycle the properties is most memory efficient method in a high generation and destruction cycle.
I don't think my peak population of components will ever be a very high number in this instance, it's mostly the component's tasks that can slow down my app. I'll just set it enabled and visible to false if I don't want any interaction from it for now...

Would editing speed and heading to 0 and change photo to lower quality image all help save memory? I don't know what the backend of MIT programming is doing once it is no longer visible and already stopped against the edge of the canvas effectively not moving already (but I imagine it's trying)

Yeah it was just giving me an error casting a java.array into something it shouldn't before even trying to use any of his blocks. But I tried the block and it didn't seem to have an effect.

I guess I already explained the reasoning of that before. But to explain it again, I'd rather have all the improvements in one release than a bunch of different releases just to fix a typo or something else unless it is really critical (that causes the app to crash etc.).

Also, that reminded me that I already posted the AIX with your changes first when I merged your PR. (I also added the link of this post to the topic itself right now.)

Admittedly indexing my components would be a lot easier if I knew how to check if component exists before throwing an error by referring to non-existent component. I'm not quiet sure how to use this Used ID block


only return true if I'm referring to the last added Dynamic Component


always returns false


always returns false

"UsedIDs" is a list by itself, so you should be able to simply use in "is in list?" block with "UsedIDs" in "list" parameter of the block.

1 Like

Thanks, I'll have some common sense with my breakfast tomorrow :smiley: