Evaluating GoDiagram 2.5.2 and realised that the class hierrarchy has undergone some rework since the documentation was last updated. Can I get some pointers on how to construct collapsible node types such as CollapsableRecordNode and ClassDiagram node etc. The current object model doesn’t give too much away about constructing these specific types. Some simple c# source code to get me started would be fantastic if available.
The complete sources for CollapsingRecordNode and ClassDiagramNode are in the Demo1 sample directory. They are example classes, which is why they are not documented in the API.
In both cases there’s a node class that contains lists of items.
The lists are implemented as GoListGroups. In ClassDiagramNode there’s actually two levels of GoListGroups; in CollapsingRecordNode the lists can be nested arbitrarily deep.
Each item is implemented as a group. In the case of CollapsingRecordNode the item is actually a GoTextNode, since that was a convenient implementation to provide a text Label with a Port on the left and right sides.
Both classes support setting item widths.
CollapsingRecordNode has additional features to handle indentation and optional drag-and-drop within the node.