View Javadoc
1   package io.github.magwas.inez.ui;
2   
3   import javafx.scene.control.TreeCell;
4   import javafx.scene.control.TreeItem;
5   import javafx.scene.control.TreeView;
6   import javafx.util.Callback;
7   
8   import io.github.magwas.inez.element.BridiElement;
9   
10  public class BridiCellFactory implements Callback<TreeView<BridiElement>, TreeCell<BridiElement>> {
11  
12  	@Override
13  	public TreeCell<BridiElement> call(TreeView<BridiElement> param) {
14  		return new TreeCell<>() {
15  			@Override
16  			protected void updateItem(final BridiElement item, final boolean empty) {
17  				super.updateItem(item, empty);
18  				if (empty || item == null) {
19  					setText(null);
20  					setGraphic(null);
21  				} else {
22  					setText(item.getRepresentation());
23  					TreeItem<BridiElement> treeItem = getTreeItem();
24  					if (treeItem != null) {
25  						setGraphic(treeItem.getGraphic());
26  					}
27  				}
28  			}
29  		};
30  	}
31  }