/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package nl.fontys.sofa.limo.view.custom.table;
import javax.swing.JTable;
import javax.swing.table.TableCellEditor;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableColumn;
import javax.swing.table.TableModel;
/**
*
* @author nilsh
*/
public class LimoTable extends JTable {
public LimoTable(TableModel dm) {
super(dm);
}
@Override
public TableCellRenderer getCellRenderer(int row, int column) {
TableColumn tableColumn = getColumnModel().getColumn(column);
TableCellRenderer renderer = tableColumn.getCellRenderer();
if (renderer == null && getValueAt(row, column) != null) {
renderer = getDefaultRenderer(getValueAt(row, column).getClass());
}
if (renderer == null) {
renderer = getDefaultRenderer(getColumnClass(column));
}
return renderer;
}
@Override
public TableCellEditor getCellEditor(int row, int column) {
TableColumn tableColumn = getColumnModel().getColumn(column);
TableCellEditor editor = tableColumn.getCellEditor();
if (editor == null && getValueAt(row, column) != null) {
editor = getDefaultEditor(getValueAt(row, column).getClass());
}
if (editor == null) {
editor = getDefaultEditor(getColumnClass(column));
}
return editor;
}
}