20 package net.sf.gridarta.gui.panel.connectionview;
22 import java.awt.Component;
23 import java.util.Collection;
24 import java.util.TreeSet;
25 import javax.swing.DefaultListCellRenderer;
26 import javax.swing.JList;
28 import org.jetbrains.annotations.NotNull;
36 public abstract class CellRenderer<K>
extends DefaultListCellRenderer {
46 private final StringBuilder
sbForFormat =
new StringBuilder();
51 private final Collection<String>
names =
new TreeSet<>(String.CASE_INSENSITIVE_ORDER);
60 public Component
getListCellRendererComponent(
final JList<?> list,
final Object value,
final int index,
final boolean isSelected,
final boolean cellHasFocus) {
61 super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
74 for (
final String name :
names) {
89 protected abstract String
formatKey(@NotNull K key);