1 package nl.tudelft.simulation.introspection.mapping;
2
3 import java.awt.Component;
4 import java.util.EventObject;
5
6 import javax.swing.DefaultCellEditor;
7 import javax.swing.JTable;
8 import javax.swing.JTextField;
9 import javax.swing.event.CellEditorListener;
10 import javax.swing.table.TableCellEditor;
11
12 /***
13 * The default editor.
14 * <p>
15 * (c) copyright 2003 <a href="http://www.simulation.tudelft.nl">Delft
16 * University of Technology </a>, the Netherlands. <br>
17 * See for project information <a
18 * href="http://www.simulation.tudelft.nl">www.simulation.tudelft.nl </a> <br>
19 * License of use: <a href="http://www.gnu.org/copyleft/gpl.html">General Public
20 * License (GPL) </a>, no warranty <br>
21 *
22 * @author <a href="http://www.tbm.tudelft.nl/webstaf/peterja/index.htm">Peter
23 * Jacobs </a>
24 * @version 1.2 Apr 15, 2004
25 * @since 1.4
26 */
27 public class MyDefaultEditor implements TableCellEditor
28 {
29 /*** the delegate */
30 private TableCellEditor delegate = new DefaultCellEditor(new JTextField());
31
32 /***
33 * @see javax.swing.table.TableCellEditor#getTableCellEditorComponent(JTable,
34 * Object, boolean, int, int)
35 */
36 public Component getTableCellEditorComponent(final JTable table,
37 final Object value, final boolean isSelected, final int row,
38 final int column)
39 {
40 TableCellEditor editor = table.getDefaultEditor(value.getClass());
41 if (!(editor instanceof MyDefaultEditor))
42 {
43 this.delegate = editor;
44 }
45 return this.delegate.getTableCellEditorComponent(table, value,
46 isSelected, row, column);
47 }
48
49 /***
50 * @see javax.swing.CellEditor#cancelCellEditing()
51 */
52 public void cancelCellEditing()
53 {
54 this.delegate.cancelCellEditing();
55 }
56
57 /***
58 * @see javax.swing.CellEditor#getCellEditorValue()
59 */
60 public Object getCellEditorValue()
61 {
62 return this.delegate.getCellEditorValue();
63 }
64
65 /***
66 * @see javax.swing.CellEditor#isCellEditable(EventObject)
67 */
68 public boolean isCellEditable(final EventObject anEvent)
69 {
70 return this.delegate.isCellEditable(anEvent);
71 }
72
73 /***
74 * @see javax.swing.CellEditor#shouldSelectCell(EventObject)
75 */
76 public boolean shouldSelectCell(final EventObject anEvent)
77 {
78 return this.delegate.shouldSelectCell(anEvent);
79 }
80
81 /***
82 * @see javax.swing.CellEditor#stopCellEditing()
83 */
84 public boolean stopCellEditing()
85 {
86 return this.delegate.stopCellEditing();
87 }
88
89 /***
90 * @see javax.swing.CellEditor#addCellEditorListener(CellEditorListener)
91 */
92 public void addCellEditorListener(final CellEditorListener l)
93 {
94 this.delegate.addCellEditorListener(l);
95 }
96
97 /***
98 * @see javax.swing.CellEditor#removeCellEditorListener(CellEditorListener)
99 */
100 public void removeCellEditorListener(final CellEditorListener l)
101 {
102 this.delegate.removeCellEditorListener(l);
103 }
104 }