Element Reorder Plugin // Simplify LayoutOrder ordering and children indexing

Element Reorder Plugin

IMPORTANT NOTE: This plugin relies on a really hacky method of messing with instance parents to re-order elements. Let me know if undoing may lead to unpredictable results.

DOWNLOAD PLUGIN HERE OR DOWN BELOW (93.1 KB)

While I was developing a game, I found out as a developer that it is impossible to change the order the UIGrid/List constraints display when having SortOrder set to LayoutOrder, other than parenting children elsewhere and back to it’s original parent.

For this reason, I have developed a plugin that automates this process. It takes all children, parents them elsewhere (not nil, otherwise, we expect jank) and then back to original parent within specific order

Here’s the example with simple automation of re-parenting technique to display children as last.
RobloxStudioBeta_FJBN2
However, I wasn’t quite satisfied with this result, what if there are many children? That’d be inconvinient. So, I decided to make something more complex out of that and make a tree inspector you can drag n’ drop or use arrows to organise children order.

Take a look.


Neat eh? I’d say so.


Honestly I would make a feature request in roblox to allow us to have custom UI ordering without utilizing names or this type of stuff, but I am not a Regular, so I can't post things in feature requests.

Also just letting you know that you are probably better off making your own list layout system, since you would have much greater control over it’s behavior.

Eitherway, you can download plugin here:
ELEMENT REORDER PLUGIN (93.1 KB)

If you want a legacy plugin, get it here (tho it creates folder for no reason but why would you need that anyway:
LEGACY REORDER PLUGIN (3.2 KB)

9 Likes

Hi guys. Just a small update on what am I doing with plugin so far. I have added a feature to analyze an instance and the ability to change order. For now its only controlled via arrows, but I might potentially add drag n’ drop feature to be able to drag element and drop it somewhere.

Also just a small fact, this is first ever plugin I made, so stuff may look goofy or it might contain bad code practices, but the more you try, the better you get.

I made it a while ago, but I was too lazy to upload it for public use, so here, now it’s for public use.