View Javadoc

1   package nl.tudelft.simulation.introspection.mapping;
2   
3   import java.awt.Color;
4   import java.awt.Component;
5   
6   import javax.swing.BorderFactory;
7   import javax.swing.JPanel;
8   import javax.swing.JTable;
9   import javax.swing.table.TableCellRenderer;
10  
11  /***
12   * The color renderer
13   * <p>
14   * (c) copyright 2002-2005 <a href="http://www.simulation.tudelft.nl">Delft
15   * University of Technology </a>, the Netherlands. <br>
16   * See for project information <a
17   * href="http://www.simulation.tudelft.nl">www.simulation.tudelft.nl </a> <br>
18   * License of use: <a href="http://www.gnu.org/copyleft/lesser.html">Lesser
19   * General Public License (LGPL) </a>, no warranty.
20   * 
21   * @author <a href="http://www.peter-jacobs.com/index.htm">Peter Jacobs </a>
22   * @version 1.2 Apr 15, 2004
23   * @since 1.5
24   */
25  public class MyColorRenderer implements TableCellRenderer
26  {
27      /***
28       * @see javax.swing.table.TableCellRenderer
29       *      #getTableCellRendererComponent(javax.swing.JTable, java.lang.Object,
30       *      boolean, boolean, int, int)
31       */
32      public Component getTableCellRendererComponent(final JTable table,
33              final Object value, final boolean isSelected,
34              final boolean hasFocus, final int row, final int column)
35      {
36          JPanel result = new JPanel();
37          Color color = (Color) value;
38          if (isSelected)
39          {
40              color = color.darker();
41          }
42          if (hasFocus)
43          {
44              result.setBorder(BorderFactory.createLineBorder(Color.BLACK, 1));
45          }
46          result.setBackground(color);
47          return result;
48      }
49  }