KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > SnowMailClient > Language > Editor > SearchStringTableCellRenderer


1 package SnowMailClient.Language.Editor;
2
3 import java.util.*;
4 import javax.swing.table.*;
5 import javax.swing.*;
6 import java.awt.*;
7
8 public final class SearchStringTableCellRenderer extends DefaultTableCellRenderer
9 {
10   public SearchStringTableCellRenderer()
11   {
12   }
13
14   String JavaDoc searchString = "";
15   public void setSearchstring(String JavaDoc s)
16   {
17     searchString = s.toUpperCase();
18   }
19
20
21   public Component getTableCellRendererComponent(JTable table, Object JavaDoc value,
22                                                  boolean isSelected, boolean hasFocus,
23                                                  int row, int column)
24   {
25     int fs = UIManager.getFont("Label.font").getSize();
26     setBorder( BorderFactory.createEmptyBorder(fs/10,fs/2,fs/10,fs/4) );
27     String JavaDoc strValue = (String JavaDoc) value;
28
29     setIcon(null);
30     setText( (value != null) ? value.toString() : "");
31     setHorizontalAlignment(JLabel.LEFT);
32
33
34     if (isSelected)
35     {
36        super.setForeground(table.getSelectionForeground());
37        super.setBackground(table.getSelectionBackground());
38     }
39     else
40     {
41        if(row%2==0)
42        {
43           setBackground(new Color(0,0,117, 10));
44        }
45        else
46        {
47           setBackground(Color.white);
48        }
49     }
50
51     if(searchString.length() >0 && strValue.toUpperCase().indexOf(searchString)!=-1)
52     {
53       if (isSelected)
54       {
55         setBackground(table.getSelectionBackground().brighter());
56       }
57       else
58       {
59         setBackground(new Color(220,220,70,150));
60       }
61     }
62
63     return(this);
64   }
65
66 } // DefaultTableCellRenderer
Popular Tags