Statistics
| Revision:

root / trunk / libraries / libUIComponent_praster / src / org / gvsig / gui / beans / table / models / TreeRadioButtonModel.java @ 8026

History | View | Annotate | Download (2.22 KB)

1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2006 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program 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
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 */
19
package org.gvsig.gui.beans.table.models;
20

    
21
import javax.swing.table.DefaultTableModel;
22

    
23
/**
24
 * Componente tabla
25
 * 
26
 * @author Nacho Brodin (brodin_ign@gva.es)
27
 *
28
 */
29
public class TreeRadioButtonModel extends DefaultTableModel implements IModel{
30
    final private static long         serialVersionUID = -3370601314380922368L;
31
    private String[]                        columnNames = null;
32

    
33
    public TreeRadioButtonModel(String[] columnNames) {
34
        super(new Object[0][4], columnNames);
35
        this.columnNames = columnNames;
36
    }
37

    
38
    public Class getColumnClass(int c) {
39
        if (c < 3) {
40
            return Boolean.class;
41
        }
42

    
43
        return String.class;
44
    }
45

    
46
    public void setValueAt(Object value, int row, int col) {
47
        if ((col < 3) && ((Boolean) value).booleanValue()) {
48
            for (int i = 0; i < getRowCount(); i++) {
49
                if (i != row) {
50
                    setValueAt(new Boolean(false), i, col);
51
                }
52
            }
53
        }
54

    
55
        super.setValueAt(value, row, col);
56
    }
57

    
58
    public void addNew() {
59
        super.addRow(new Object[] {
60
                         new Boolean(false), new Boolean(false),
61
                         new Boolean(false), ""
62
                     });
63
    }
64
    
65
    public Object[] getNewLine(){
66
            return new Object[] {        new Boolean(false), new Boolean(false),
67
                                                new Boolean(false), ""
68
                                            };
69
    }
70
            
71
}