package Common.Visual.Trees; import Common.Utils.Utils_; import Common.Visual.Fonts.VisualiserFonts; import Common.Visual.UI_; import _VisualDVM.ProjectData.SapforData.FileObjectWithMessages; import javax.swing.*; import javax.swing.tree.DefaultMutableTreeNode; public class GraphTreeCellRenderer extends StyledTreeCellRenderer { public java.awt.Component getTreeCellRendererComponent( JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { super.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus); Object o = ((DefaultMutableTreeNode) value).getUserObject(); if (o instanceof FileObjectWithMessages) { FileObjectWithMessages target = (FileObjectWithMessages) o; setIcon(Utils_.getIcon(target.ImageKey())); setFont(UI_.getTheme().Fonts.get(target.getFont())); } else { setIcon(null); setFont(UI_.getTheme().Fonts.get(VisualiserFonts.TreeItalic)); } setForeground(tree.getForeground()); return this; } }