1 package org.columba.core.gui.logdisplay; 17 18 import java.awt.Color ; 19 import java.awt.Component ; 20 import java.util.logging.Level ; 21 import java.util.logging.LogRecord ; 22 23 import javax.swing.JLabel ; 24 import javax.swing.JList ; 25 import javax.swing.ListCellRenderer ; 26 27 32 public class LogRecordListRenderer extends JLabel implements ListCellRenderer { 33 34 37 public LogRecordListRenderer() { 38 super(); 39 setOpaque(true); 40 } 41 42 43 public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { 44 45 LogRecord record = (LogRecord ) value; 46 47 if (record.getLevel() == Level.SEVERE) { 48 setForeground(Color.RED); 49 } else if (record.getLevel() == Level.WARNING) { 50 setForeground(Color.ORANGE); 51 } else { 52 setForeground(list.getForeground()); 53 } 54 55 if (isSelected) { 56 setBackground(list.getSelectionBackground()); 57 } else { 58 setBackground(list.getBackground()); 59 } 60 61 StringBuffer buffer = new StringBuffer (); 62 67 buffer.append(record.getMessage()); 68 69 setText(buffer.toString()); 70 71 return this; 72 } 73 74 86 87 89 90 public void validate() { 91 } 92 93 94 public void revalidate() { 95 } 96 97 98 protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) { 99 } 100 101 102 public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue) { 103 } 104 105 } 106 | Popular Tags |