View Javadoc

1   package net.sf.jlayercheck.gui;
2   
3   import java.awt.Component;
4   
5   import javax.swing.JTree;
6   import javax.swing.tree.DefaultTreeCellRenderer;
7   import javax.swing.tree.TreeCellRenderer;
8   
9   import net.sf.jlayercheck.util.modeltree.ClassNode;
10  
11  /**
12   * Cell renderer used by ModelPackageClassTree to display the tree. It
13   * removes the package names from the classes. 
14   */
15  public class ModelPackageClassRenderer extends DefaultTreeCellRenderer implements TreeCellRenderer {
16  	
17  	/**
18  	 * 
19  	 */
20  	private static final long serialVersionUID = 3172175241849470075L;
21  
22  	@Override
23  	public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
24  		super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf,
25  				row, hasFocus);
26  
27  		if (value instanceof ClassNode) {
28  			// do not display package name
29  			ClassNode cn = (ClassNode) value;
30  			setText(cn.getName().replaceAll(".*/", ""));
31  		}
32  		
33  		return this;
34  	}
35  }