Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

ColorRenderer.java

00001 package DisplayGUI;
00002 /* 
00003  * ColorRenderer.java (compiles with releases 1.2, 1.3, and 1.4) is used by 
00004  * TableDialogEditDemo.java.
00005  */
00006 
00007 import javax.swing.BorderFactory;
00008 import javax.swing.JLabel;
00009 import javax.swing.JTable;
00010 import javax.swing.border.Border;
00011 import javax.swing.table.TableCellRenderer;
00012 import java.awt.Color;
00013 import java.awt.Component;
00014 
00015 public class ColorRenderer extends JLabel
00016                            implements TableCellRenderer {
00017     Border unselectedBorder = null;
00018     Border selectedBorder = null;
00019     boolean isBordered = true;
00020 
00021     public ColorRenderer(boolean isBordered) {
00022         this.isBordered = isBordered;
00023         setOpaque(true); //MUST do this for background to show up.
00024     }
00025 
00026     public Component getTableCellRendererComponent(
00027                             JTable table, Object color,
00028                             boolean isSelected, boolean hasFocus,
00029                             int row, int column) {
00030         Color newColor = (Color)color;
00031         setBackground(newColor);
00032         if (isBordered) {
00033             if (isSelected) {
00034                 if (selectedBorder == null) {
00035                     selectedBorder = BorderFactory.createMatteBorder(2,5,2,5,
00036                                               table.getSelectionBackground());
00037                 }
00038                 setBorder(selectedBorder);
00039             } else {
00040                 if (unselectedBorder == null) {
00041                     unselectedBorder = BorderFactory.createMatteBorder(2,5,2,5,
00042                                               table.getBackground());
00043                 }
00044                 setBorder(unselectedBorder);
00045             }
00046         }
00047         
00048         setToolTipText("RGB value: " + newColor.getRed() + ", "
00049                                      + newColor.getGreen() + ", "
00050                                      + newColor.getBlue());
00051         return this;
00052     }
00053 }

Generated on Thu Jul 15 09:55:40 2004 for SCT DAQ/DCS Software - Java by doxygen 1.3.5