1
2
3
4
5
6
7
8
9
10
11 package com.jsql.view.swing.tree;
12
13 import com.jsql.view.swing.tree.model.AbstractNodeModel;
14
15 import javax.swing.*;
16 import javax.swing.tree.DefaultMutableTreeNode;
17 import javax.swing.tree.DefaultTreeCellRenderer;
18 import java.awt.*;
19
20
21
22
23
24 public class CellRendererNode extends DefaultTreeCellRenderer {
25 @Override
26 public Component getTreeCellRendererComponent(
27 JTree tree, Object nodeRenderer, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus
28 ) {
29 DefaultMutableTreeNode currentNode = (DefaultMutableTreeNode) nodeRenderer;
30 var userObject = currentNode.getUserObject();
31 AbstractNodeModel dataModel = (AbstractNodeModel) userObject;
32
33 return dataModel.getComponent(tree, nodeRenderer, selected, leaf, hasFocus);
34 }
35 }