package net.codjo.segmentation.gui.settings; import java.awt.Color; import java.awt.Component; import javax.swing.JTree; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.tree.DefaultTreeCellRenderer; /** * */ /** * Renderer sur l'arbre : la poche fourre-tout est affich�e en rouge. */ class SleeveTreeCellRenderer extends DefaultTreeCellRenderer { SleeveTreeCellRenderer() { } @Override public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean focused) { super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, focused); if ((value instanceof Sleeve)) { Sleeve sleeve = (Sleeve)value; if (sleeve.isDustbin()) { setForeground(Color.red); setIcon(getFourreToutIcon()); } else if (sleeve.isTerminal()) { setIcon(getPocheIcon()); } else { setIcon(getNoeudIcon()); } } else if ((value instanceof ClassificationsEditorTreeModel.Sleeve)) { ClassificationsEditorTreeModel.Sleeve sleeve = (ClassificationsEditorTreeModel.Sleeve)value; if (sleeve.isTerminalElement()) { setIcon(getPocheIcon()); } else { setIcon(getNoeudIcon()); } } else { setIcon(getAxeIcon()); } return this; } private Icon getAxeIcon() { return new ImageIcon(getClass().getResource("axe.png")); } private Icon getNoeudIcon() { return new ImageIcon(getClass().getResource("noeud.png")); } private Icon getPocheIcon() { return new ImageIcon(getClass().getResource("poche.png")); } private Icon getFourreToutIcon() { return new ImageIcon(getClass().getResource("fourre_tout.png")); } }