return (EventTableModel) getModel();
}
/** {@inheritDoc} */
public Rectangle getCellRect(int row, int column, boolean includeSpacing) {
final EventTableModel eventTableModel = getEventTableModel();
// sometimes JTable asks for a cellrect that doesn't exist anymore, due
// to an editor being installed before a bunch of rows were removed.
// In this case, just return an empty rectangle, since it's going to
// be discarded anyway
if(row >= eventTableModel.getRowCount()) {
return new Rectangle();
}
// if it's the separator row, return the entire row as one big rectangle
Object rowValue = eventTableModel.getElementAt(row);
if(rowValue instanceof SeparatorList.Separator) {
Rectangle firstColumn = super.getCellRect(row, 0, includeSpacing);
Rectangle lastColumn = super.getCellRect(row, getColumnCount() - 1, includeSpacing);
return firstColumn.union(lastColumn);