GridLayout rendering

Hi,

We are looking for a layout that would arrange a dynamic collection of group nodes in a grid constrained by a number of columns and a maximum pixel width. We naturally gravitated toward the GridLayout, setting the wrappingColumn and wrappingWidth attributes as needed.

For a given set of nodes, a wrappingColumn value of 2 and a wrappingWidth of 2000, we get a diagram like the following:

There are a couple of things we’d like to be different about this diagram.

First, we’d like the first few childless nodes to be split in 2 columns to better fill the width of their parent.

Second, we’d like child nodes in general to expand vertically and horizontally to fill the space within their parent node, so that we don’t end up with misaligned nodes and dead space as seen in the bottom half of the diagram.

Is there a way to achieve this through the GridLayout? Is there any other layout that would be better suited to our needs?

Any guidance would be appreciated.
Thanks

First, we’d like the first few childless nodes to be split in 2 columns to better fill the width of their parent.

I wondering why this isn’t happening already, if you have a wrapping width of 2000. You’re setting this GridLayout as a layout for each group in question, correct?

Second, we’d like child nodes in general to expand vertically and horizontally to fill the space within their parent node

It is not in general the property of a Layout to modify the size of the nodes

You might instead be able to get what you want by using a Table Panel and instead of Groups, using Item arrays: GoJS Item Arrays-- Northwoods Software

But this would require you to know (or determine) ahead of time which columns you’d want to sort things into, and makes nesting more difficult.