Component (JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); final TableModel model = table.getModel(); boolean changed = false; if (model instanceof MyModel) { changed = ((MyModel)model).myProperties.get(row).changed; } Color fg = isSelected ? table.getSelectionForeground() : changed ? JBUI.CurrentTheme.Link.Foreground.ENABLED : table.getForeground(); final JBFont font = JBFont.label(); setFont(changed ? font.asBold() : font); setForeground(fg); setBorder(new JBEmptyBorder(2, 3, 2, 3)); return this; }