Component (JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { if (value instanceof ArrangementGroupingComponent component) { component.setRowIndex(row + 1); component.setHighlight(TableHoverListener.getHoveredRow(table) == row || table.isRowSelected(row)); component.revalidate(); return component; } else if (value instanceof ArrangementRepresentationAware) { return ((ArrangementRepresentationAware)value).getComponent(); } return null; }