Each Tree-view item can have a list of child items that are displayed below this item. A user can navigate through the Tree-view by selecting, expanding and collapsing items as well as modifying tree data by editing item labels, checking and unchecking items.
The classic Tree-View navigation control, used to group and display a hierarchical list of items, has been enhanced in Advance Design – Steel Connection module with some additional options:
- Propagation of parameter state between all the child items of a parent item and all the parent items of the tree family.
- Possibility to copy parameter values between child items.
- Tree nodes with tri-state checkboxes: besides the two active and inactive states, a checkbox can have a third, “indeterminate” state; this is tied to a collection of items in mixed states, meaning that a parent item can have an indeterminate state if not all child items have the same state.
Tree-View control: How it works?
The tree mechanism implies that for each tree-family item, the same parameters are displayed inside the window, even if some of them are inactive (if they do not make sense for that particular tree-family member).
Same parameters for each tree-family member
At root node level (either at Parent item Ievel or at Tree family level), the state of the parameters is displayed in so-called “multi-edit” state:
- The parameters’ values represent a union of all the states found for the child items;
- The parameters are editable and changes done at parent level apply simultaneously to all child items. The user can then go to each child item and modify values of particular parameters.
When it comes to the additional operations that can be done either at parent or at child level, it works as follows:
1. Parent or child items have checkboxes associated, therefore, they control if the elements are created in the model or not. The third state of a tree view control shows on parent nodes that check states for children are not all the same.
For example, for Gable wall end plate connection, only Flange stiffeners are placed on the beam; thus, the Beam stiffeners category, which groups all the stiffeners that can be placed on the beam, has an indeterminate state, as one “child” item has a different value.
2. In the situation when a child item has the same parameter values as another, a copy function is available at right click. Values can be copied only from other active child items, with a common parent.
For example, Web doublers can borrow the parameter values from the other active child items, Flange and Center stiffeners on beam.
Tree-View control: Practical applications
One of the practical applications of the Tree-view control is in Advance Design – Steel Connection module.
Here is how the mechanism works for the Gable wall with external bolts connection when the Plate tab is open. The dialog box allows you to select the desired options available for configuring the groups of Shim Plates:
- When you enter different parameters in the Thickness field for child items (Group 1, Group 2 and Group 3), the Thickness field of parent item (Shim Plates) will become ”Varies”.
- When you enter identical values in the Thickness field for child items (Group 1, Group 2 and Group 3), the Thickness field of parent item (Shim Plates) will display that value.
- When you enter a new value in the Thickness field of parent item (Shim Plates), even though it displays “Varies”, it will be applied simultaneously to the Thickness field for child items (Group 1, Group 2 and Group 3).