Component (JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { myCellState.collectState(table, isSelected, hasFocus, row, column); if (value == null) { myCellState.updateRenderer(myPanel); return myPanel; } myCellState.updateRenderer(this); if (value instanceof String) { setSelected(Boolean.parseBoolean((String)value)); } else { setSelected(((Boolean)value).booleanValue()); } setEnabled(table.isCellEditable(row, column)); return this; }