in kit/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/AbstractHierarchyPanelController.java [826:948]
private void updateTreeItem(final TreeItem<HierarchyItem> treeItem) {
final DesignHierarchyMask mask = treeItem.getValue().getMask();
assert mask != null;
// Graphic (displayed at first position)
//---------------------------------
if (mask.isAcceptingAccessory(Accessory.GRAPHIC)) {
final FXOMObject value = mask.getAccessory(Accessory.GRAPHIC);
if (value != null) {
treeItem.getChildren().add(makeTreeItemGraphic(mask, value));
}
}
// Tooltip (displayed at second position)
//---------------------------------
if (mask.isAcceptingAccessory(Accessory.TOOLTIP)) {
final FXOMObject value = mask.getAccessory(Accessory.TOOLTIP);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
// Context menu (displayed at third position)
//---------------------------------
if (mask.isAcceptingAccessory(Accessory.CONTEXT_MENU)) {
final FXOMObject value = mask.getAccessory(Accessory.CONTEXT_MENU);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
// Axis (chart)
//---------------------------------
if (mask.isAcceptingAccessory(Accessory.XAXIS)) {
final FXOMObject value = mask.getAccessory(Accessory.XAXIS);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
if (mask.isAcceptingAccessory(Accessory.YAXIS)) {
final FXOMObject value = mask.getAccessory(Accessory.YAXIS);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
// Gluon ExpansionPanel
for (Accessory accessory: new Accessory[]{
Accessory.EXPANDED_CONTENT,
Accessory.COLLAPSED_CONTENT
}) {
if (mask.isAcceptingAccessory(accessory)) {
final FXOMObject value = mask.getAccessory(accessory);
treeItem.getChildren().add(makeTreeItemExpansionPanel(mask, value, accessory));
}
}
// Gluon ExpandedPanel
if (mask.isAcceptingAccessory(Accessory.EX_CONTENT)) {
final FXOMObject value = mask.getAccessory(Accessory.EX_CONTENT);
treeItem.getChildren().add(makeTreeItemExpandedPanel(mask, value));
}
// Content (ScrollPane, Tab...)
//---------------------------------
if (mask.isAcceptingAccessory(Accessory.CONTENT)) {
final FXOMObject value = mask.getAccessory(Accessory.CONTENT);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
if (mask.isAcceptingAccessory(Accessory.ROOT)) {
final FXOMObject value = mask.getAccessory(Accessory.ROOT);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
if (mask.isAcceptingAccessory(Accessory.SCENE)) {
final FXOMObject value = mask.getAccessory(Accessory.SCENE);
if (value != null) {
treeItem.getChildren().add(makeTreeItem(value));
}
}
// Positionning
//---------------------------------
for (Accessory accessory : new Accessory[]{
Accessory.TOP,
Accessory.LEFT,
Accessory.CENTER,
Accessory.RIGHT,
Accessory.BOTTOM}) {
if (mask.isAcceptingAccessory(accessory)) {
final FXOMObject value = mask.getAccessory(accessory);
treeItem.getChildren().add(makeTreeItemBorderPane(mask, value, accessory));
}
}
// DialogPane
//---------------------------------
for (Accessory accessory : new Accessory[]{
Accessory.HEADER,
Accessory.DP_GRAPHIC,
Accessory.DP_CONTENT,
Accessory.EXPANDABLE_CONTENT}) {
if (mask.isAcceptingAccessory(accessory)) {
final FXOMObject value = mask.getAccessory(accessory);
treeItem.getChildren().add(makeTreeItemDialogPane(mask, value, accessory));
}
}
// Sub components
//---------------------------------
if (mask.isAcceptingSubComponent()) {
for (int i = 0, count = mask.getSubComponentCount(); i < count; i++) {
final FXOMObject value = mask.getSubComponentAtIndex(i);
treeItem.getChildren().add(makeTreeItem(value));
}
}
}