View Javadoc

1   package org.wcb.autohome.util;
2   /***
3    * Copyright (C) 1999  Walter Bogaardt
4    *
5    * This library is free software; you can redistribute it and/or
6    * modify it under the terms of the GNU Lesser General Public
7    * License as published by the Free Software Foundation; either
8    * version 2 of the License, or (at your option) any later version.
9    *
10   * This library is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13   * Lesser General Public License for more details.
14   *
15   * You should have received a copy of the GNU Lesser General Public
16   * License along with this library; if not, write to the Free Software
17   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
18   *
19   *  Project:   Home Automation Interface 
20   *
21   */ 
22  import org.wcb.autohome.util.ui.LightRender;
23  
24  import java.awt.event.ActionListener;
25  import java.awt.event.ActionEvent;
26  import java.awt.Component;
27  import javax.swing.JCheckBox;
28  import javax.swing.JButton;
29  import javax.swing.JTable;
30  import javax.swing.DefaultCellEditor;
31  
32  public class LightEditor extends DefaultCellEditor {
33  
34      LightRender render = new LightRender();
35      public String currentString = null;
36  
37      public LightEditor(JButton b) {
38          super(new JCheckBox());
39          editorComponent = b;
40          setClickCountToStart(1);
41          b.addActionListener(new ActionListener(){
42              public void actionPerformed(ActionEvent e){
43                  fireEditingStopped();
44              }
45          });
46      }
47  
48      protected void fireEditingStopped() {
49          super.fireEditingStopped();
50      }
51  
52      public Object getCellEditorValue() {
53          return currentString;
54      }
55  
56      public Component getTableCellEditorComponent(JTable table,
57                                                   Object value,
58                                                   boolean isSelected,
59                                                   int row,
60                                                   int column) {
61          ((JButton)editorComponent).setText(value.toString());
62          currentString = (String)value;
63          return editorComponent;
64      }	
65  }
66