1
2 package hoplugins.trainingExperience.ui.renderer;
3
4 import hoplugins.trainingExperience.constants.Skills;
5 import hoplugins.trainingExperience.ui.TrainingLegendPanel;
6
7 import java.awt.Color;
8 import java.awt.Component;
9
10 import javax.swing.JTable;
11 import javax.swing.table.DefaultTableCellRenderer;
12
13
14 /***
15 * TableCellRenderer for showing arrows representing the amount of change.
16 *
17 * @author NetHyperon
18 */
19 public class ChangeTableRenderer extends DefaultTableCellRenderer {
20
21
22 /*** TODO Missing Parameter Documentation */
23 private static final Color SILVER = new Color(239, 239, 239);
24
25
26
27 /***
28 * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable,
29 * java.lang.Object, boolean, boolean, int, int)
30 */
31 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
32 boolean hasFocus, int row, int column) {
33 super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
34
35 boolean isOld = ((Boolean) table.getValueAt(row, 5)).booleanValue();
36
37 if (!isSelected) {
38 if (isOld) {
39 this.setBackground(SILVER);
40 } else {
41 this.setBackground(Color.WHITE);
42 }
43 }
44
45 if (column == 3) {
46 try {
47 int skill = Integer.parseInt((String) table.getValueAt(row, 3));
48
49 setText(Skills.getSkillDescription(skill));
50 setIcon(TrainingLegendPanel.getSkillupTypeIcon(skill));
51 } catch (NumberFormatException e) {
52 }
53 }
54
55 return this;
56 }
57 }