@Override
public Component getTableCellRendererComponent(final JTable table, final Object obj, final boolean isSelected,
final boolean hasFocus, final int row, final int column) {
adaptee.getTableCellRendererComponent(table, obj, isSelected, hasFocus, row, column);
setForeground(adaptee.getForeground());
setBackground(adaptee.getBackground());
setBorder(adaptee.getBorder());
setFont(adaptee.getFont());
setText(adaptee.getText());
final TableColumnModel columnModel = table.getColumnModel();
setSize(columnModel.getColumn(column).getWidth(), 100000);
int heightWanted = (int) getPreferredSize().getHeight();
addSize(table, row, column, heightWanted);
heightWanted = findTotalMaximumRowSize(table, row);
if (heightWanted != table.getRowHeight(row)) {
table.setRowHeight(row, heightWanted);
}
return this;
}