View Javadoc
1   package net.logAnalyzer.gui.messages.cellrenderers;
2   
3   import java.awt.Component;
4   
5   import javax.swing.Icon;
6   import javax.swing.JTable;
7   
8   import net.logAnalyzer.converters.LAConverter;
9   import net.logAnalyzer.resources.LAResourceBundle;
10  
11  /***
12   * This cell renderer is used for "%p" converter converter.
13   * 
14   * @author Karim REFEYTON
15   * @version 0.1
16   */
17  public class PriorityCellRenderer extends ImageKeyCellRender {
18      private static final long serialVersionUID = 1L;
19  
20      /***
21       * Icons for levels.
22       */
23      private static Icon[] levelsIcons = new Icon[] {
24              LAResourceBundle.getIcon("CellRenderer.DEBUG"),
25              LAResourceBundle.getIcon("CellRenderer.INFO"),
26              LAResourceBundle.getIcon("CellRenderer.WARN"),
27              LAResourceBundle.getIcon("CellRenderer.ERROR"),
28              LAResourceBundle.getIcon("CellRenderer.FATAL") };
29  
30      /***
31       * Icons keys for levels.
32       */
33      private static String[] levelsKeys = new String[] { "DEBUG", "INFO",
34              "WARN", "ERROR", "FATAL" };
35  
36      /***
37       * Constructs a new {@link ImageKeyCellRender}with {@link #levelsIcons}and
38       * {@link #levelsKeys}.
39       * 
40       * @param logconverter
41       *            Converter to render.
42       * @param logconverters
43       *            All converters.
44       */
45      public PriorityCellRenderer(LAConverter logconverter,
46              LAConverter[] logconverters) {
47          super(levelsIcons, levelsKeys, true, true);
48      }
49  
50      /***
51       * Call
52       * {@link ImageKeyCellRender#getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int)}and
53       * change the text color according to the priority.
54       * 
55       * @see ImageKeyCellRender#getTableCellRendererComponent(JTable, Object,
56       *      boolean, boolean, int, int)
57       */
58      public Component getTableCellRendererComponent(JTable table, Object value,
59              boolean isSelected, boolean hasFocus, int row, int column) {
60          super.getTableCellRendererComponent(table, value, isSelected, hasFocus,
61                  row, column);
62          return this;
63      }
64  }