KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > compiere > minigrid > CheckRenderer


1 /******************************************************************************
2  * The contents of this file are subject to the Mozilla Public License Version
3  * 1.1 (the "License"); you may not use this file except in compliance with the
4  * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
5  * Software distributed under the License is distributed on an "AS IS" basis,
6  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
7  * the specific language governing rights and limitations under the License.
8  * The Original Code is Compiere ERP&CRM.
9  * The Initial Developer of the Original Code is Jorg Janke.
10  * Portions created by Jorg Janke are Copyright (C) 1999-2001 Jorg Janke.
11  * All Rights Reserved.
12  * Contributor(s): ______________________________________.
13  *****************************************************************************/

14 package org.compiere.minigrid;
15
16 import javax.swing.*;
17 import javax.swing.table.*;
18 import java.awt.*;
19
20 import org.compiere.util.*;
21 import org.compiere.plaf.*;
22 import org.compiere.swing.*;
23
24 /**
25  * Check Box Renderer based on Boolean values
26  *
27  * @author Jorg Janke
28  * @version $Id: CheckRenderer.java,v 1.4 2003/10/04 23:40:54 jjanke Exp $
29  */

30 public final class CheckRenderer extends DefaultTableCellRenderer
31 {
32     /**
33      * Constructor
34      */

35     public CheckRenderer()
36     {
37         super();
38         m_check.setMargin(new Insets(0,0,0,0));
39         m_check.setHorizontalAlignment(JLabel.CENTER);
40         m_check.setOpaque(true);
41     } // CheckRenderer
42

43     private JCheckBox m_check = new JCheckBox();
44
45     /**
46      * Return centered, white Check Box
47      * @param table
48      * @param value
49      * @param isSelected
50      * @param hasFocus
51      * @param row
52      * @param col
53      * @return Component
54      */

55     public Component getTableCellRendererComponent(JTable table, Object JavaDoc value,
56         boolean isSelected, boolean hasFocus, int row, int col)
57     {
58         // Background & Foreground
59
Color bg = CompierePLAF.getFieldBackground_Normal();
60         // Selected is white on blue in Windows
61
if (isSelected && !hasFocus)
62             bg = table.getSelectionBackground();
63         // row not selected or field has focus
64
else
65         {
66             // Inactive Background
67
if (!table.isCellEditable(row, col))
68                 bg = CompierePLAF.getFieldBackground_Inactive();
69         }
70         // Set Color
71
m_check.setBackground(bg);
72
73         // Value
74
setValue(value);
75         return m_check;
76     } // getTableCellRendererComponent
77

78     /**
79      * Set Value
80      * @param value
81      */

82     public void setValue(Object JavaDoc value)
83     {
84         if (value != null && ((Boolean JavaDoc)value).booleanValue())
85             m_check.setSelected(true);
86         else
87             m_check.setSelected(false);
88     } // setValue
89

90 } // CheckRenderer
91
Free Books   Free Magazines  
Popular Tags