Module beamui.widgets.tree
Tree widgets.
Synopsis
// tree example
auto panel = new Panel;
auto treeItemLabel = new Label;
auto tree = new TreeWidget;
panel .add(treeItemLabel, tree);
panel .style .display = "column";
treeItemLabel .style .textAlign = TextAlign .center;
tree .style .stretch = Stretch .both;
TreeItem tree1 = tree .items .newChild("g1", "Group 1"d, "folder");
tree1 .newChild("g1_1", "item 1"d, "text-plain");
tree1 .newChild("g1_2", "item 2"d, "text-plain");
tree1 .newChild("g1_3", "item 3"d, "text-plain");
TreeItem tree2 = tree .items .newChild("g2", "Group 2"d);
tree2 .newChild("g2_1", "item 1"d);
tree2 .newChild("g2_2", "item 2"d);
tree2 .newChild("g2_3", "item 3"d);
TreeItem tree2_4 = tree2 .newChild("g2_4", "Group 2.1"d);
tree2_4 .newChild("g2_4_1", "item 1"d);
tree2_4 .newChild("g2_4_2", "item 2"d);
tree2_4 .newChild("g2_4_3", "item 3"d);
tree2_4 .newChild("g2_4_4", "item 4"d);
tree2_4 .newChild("g2_4_5", "item 5"d);
tree2 .newChild("g2_5", "item 4"d);
tree .onSelect ~= (TreeItem selectedItem, bool activated) {
dstring label = "Selected item: "d ~ toUTF32(selectedItem .id) ~ (activated ? " selected + activated"d : " selected"d);
treeItemLabel .text = label;
};
tree .selectItem("g1");
Import line
import beamui .widgets .tree;
Classes
Name | Description |
---|---|
TreeItemWidget
|
Tree item widget with a label and icon |
TreeItemWidgetBase
|
Abstract tree item |
TreeWidget
|