AnnotationSetNameCellRenderer.java
01 package gate.gui.teamware;
02 
03 import java.awt.Component;
04 import java.awt.Font;
05 
06 import javax.swing.DefaultListCellRenderer;
07 import javax.swing.JList;
08 
09 class AnnotationSetNameCellRenderer extends DefaultListCellRenderer {
10 
11   public static final String DEFAULT_SET_TEXT = "<Default annotation set>";
12 
13   private Font defaultFont;
14   
15   private Font italicFont;
16   
17   AnnotationSetNameCellRenderer() {
18     defaultFont = getFont();
19     italicFont = defaultFont.deriveFont(Font.ITALIC);
20   }
21 
22   @Override
23   public Component getListCellRendererComponent(JList list, Object value,
24           int index, boolean isSelected, boolean cellHasFocus) {
25     Font font = defaultFont;
26     if(value == null) {
27       value = DEFAULT_SET_TEXT;
28       font = italicFont;
29     }
30     Component c = super.getListCellRendererComponent(list, value, index, isSelected,
31             cellHasFocus);
32     c.setFont(font);
33     return c;
34   }
35 }