/* * 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; } }