View Javadoc

1   // %608761299:hoplugins.trainingExperience.ui.renderer%
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      //~ Static fields/initializers -----------------------------------------------------------------
21  
22      /*** TODO Missing Parameter Documentation */
23      private static final Color SILVER = new Color(239, 239, 239);
24  
25      //~ Methods ------------------------------------------------------------------------------------
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  }