KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > calendar > ui > list > CheckableList


1 //The contents of this file are subject to the Mozilla Public License Version 1.1
2
//(the "License"); you may not use this file except in compliance with the
3
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
4
//
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
7
//for the specific language governing rights and
8
//limitations under the License.
9
//
10
//The Original Code is "The Columba Project"
11
//
12
//The Initial Developers of the Original Code are Frederik Dietz and Timo Stich.
13
//Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
14
//
15
//All Rights Reserved.
16

17 package org.columba.calendar.ui.list;
18
19 import java.awt.Dimension JavaDoc;
20
21 import javax.swing.JCheckBox JavaDoc;
22 import javax.swing.JTable JavaDoc;
23 import javax.swing.table.DefaultTableColumnModel JavaDoc;
24 import javax.swing.table.TableCellRenderer JavaDoc;
25 import javax.swing.table.TableColumn JavaDoc;
26 import javax.swing.table.TableModel JavaDoc;
27
28 /**
29  *
30  *
31  * @author fdietz
32  */

33
34 public class CheckableList extends JTable JavaDoc {
35
36     // private CheckableItemListTableModel model;
37

38     public CheckableList() {
39         super();
40
41         // do not show header
42
setTableHeader(null);
43
44         // no grid lines
45
setShowGrid(false);
46
47         CheckableItemListTableModel model = new CheckableItemListTableModel();
48
49         super.setModel(model);
50
51         setRowHeight((int) new JCheckBox JavaDoc("test").getPreferredSize().getHeight() + 3);
52
53     }
54
55     public void setOptionsCellRenderer(TableCellRenderer JavaDoc renderer) {
56
57         setDefaultRenderer(String JavaDoc.class, renderer);
58
59     }
60
61     private void initColumns() {
62         DefaultTableColumnModel JavaDoc model = new DefaultTableColumnModel JavaDoc();
63
64         TableColumn JavaDoc tc = new TableColumn JavaDoc(0);
65         tc.setIdentifier("Boolean");
66         tc.setMaxWidth(21);
67         tc.setCellEditor(new CheckableListEditor());
68         tc.setCellRenderer(new DefaultBooleanRenderer());
69
70         model.addColumn(tc);
71
72         tc = new TableColumn JavaDoc(1);
73         tc.setIdentifier("String");
74         tc.setCellRenderer(new DefaultStringRenderer());
75         model.addColumn(tc);
76
77         setColumnModel(model);
78
79         // setIntercellSpacing(new Dimension(2, 2));
80

81         // setRowMargin(5);
82

83     }
84
85     /**
86      * @see javax.swing.JTable#setModel(javax.swing.table.TableModel)
87      * @overwrite
88      */

89     public void setModel(TableModel JavaDoc model) {
90
91         super.setModel(model);
92
93         initColumns();
94
95         setIntercellSpacing(new Dimension JavaDoc(0, 0));
96     }
97
98     // public CalendarItem getSelected() {
99
// int row = getSelectedRow();
100
//
101
// return ((CheckableItemListTableModel) getModel()).getElement(row);
102
// }
103

104 }
Popular Tags