View Javadoc

1   package nl.tudelft.simulation.introspection.mapping;
2   
3   import java.awt.Component;
4   
5   import javax.swing.JTable;
6   import javax.swing.table.DefaultTableCellRenderer;
7   import javax.swing.table.TableCellRenderer;
8   
9   /***
10   * @author (c) 2003 <a href="http://www.tudelft.nl">Delft University of
11   *         Technology </a>, Delft, the Netherlands <br>
12   *         <a href="http://www.tbm.tudelft.nl">Faculty of Technology, Policy and
13   *         Management </a> <br>
14   *         <a href="http://www.sk.tbm.tudelft.nl">Department of System
15   *         Engineering </a> <br>
16   *         Main researcher : <a
17   *         href="http://www.tbm.tudelft.nl/webstaf/alexandv/">Dr. Ir. A.
18   *         Verbraeck <a/><br>
19   *         Assistant researchers <a href="http://www.peter-jacobs.com">Ir.
20   *         P.H.M. Jacobs </a> and <a
21   *         href="http://www.tbm.tudelft.nl/webstaf/nielsl">Ir. N.A. Lang </a>
22   */
23  public class MyDefaultRenderer extends DefaultTableCellRenderer
24  {
25      /***
26       * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(JTable,
27       *      Object, boolean, boolean, int, int)
28       */
29      @Override
30      public Component getTableCellRendererComponent(final JTable table,
31              final Object value, final boolean isSelected,
32              final boolean hasFocus, final int row, final int column)
33      {
34          TableCellRenderer renderer = table.getDefaultRenderer(Object.class);
35          if (value != null)
36          {
37              renderer = table.getDefaultRenderer(value.getClass());
38          }
39          if (renderer instanceof MyDefaultRenderer)
40          {
41              return super.getTableCellRendererComponent(table, value,
42                      isSelected, hasFocus, row, column);
43          }
44          return renderer.getTableCellRendererComponent(table, value, isSelected,
45                  hasFocus, row, column);
46      }
47  }