1 /* TableModelEvent.java -- 2 Copyright (C) 2002 Free Software Foundation, Inc. 3 4 This file is part of GNU Classpath. 5 6 GNU Classpath is free software; you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 2, or (at your option) 9 any later version. 10 11 GNU Classpath is distributed in the hope that it will be useful, but 12 WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with GNU Classpath; see the file COPYING. If not, write to the 18 Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 19 02111-1307 USA. 20 21 Linking this library statically or dynamically with other modules is 22 making a combined work based on this library. Thus, the terms and 23 conditions of the GNU General Public License cover the whole 24 combination. 25 26 As a special exception, the copyright holders of this library give you 27 permission to link this library with independent modules to produce an 28 executable, regardless of the license terms of these independent 29 modules, and to copy and distribute the resulting executable under 30 terms of your choice, provided that you also meet, for each linked 31 independent module, the terms and conditions of the license of that 32 module. An independent module is a module which is not derived from 33 or based on this library. If you modify this library, you may extend 34 this exception to your version of the library, but you are not 35 obligated to do so. If you do not wish to do so, delete this 36 exception statement from your version. */ 37 38 39 package javax.swing.event; 40 41 import java.util.EventObject; 42 import javax.swing.table.TableModel; 43 44 /** 45 * @author Andrew Selkirk 46 */ 47 public class TableModelEvent extends EventObject 48 { 49 private static final long serialVersionUID = -7849342674552212824L; 50 51 public static final int ALL_COLUMNS = -1; 52 public static final int DELETE = -1; 53 public static final int HEADER_ROW = -1; 54 public static final int INSERT = 1; 55 public static final int UPDATE = 0; 56 57 protected int column = 0; 58 protected int firstRow = 0; 59 protected int lastRow = 0; 60 protected int type = 0; 61 62 /** 63 * Creates a <code>TableModelEvent</code> event. 64 * 65 * @param source The source object 66 */ TableModelEvent(TableModel source)67 public TableModelEvent(TableModel source) 68 { 69 this(source, 0, source.getRowCount(), ALL_COLUMNS, UPDATE); 70 } 71 72 /** 73 * Creates a <code>TableModelEvent</code> event. 74 * 75 * @param source The source object 76 * @param row The updated row 77 */ TableModelEvent(TableModel source, int row)78 public TableModelEvent(TableModel source, int row) 79 { 80 this(source, row, row, ALL_COLUMNS, UPDATE); 81 } 82 83 /** 84 * Creates a <code>TableModelEvent</code> event. 85 * 86 * @param source The source object 87 * @param firstRow The first row of update 88 * @param lastRow The last row of update 89 */ TableModelEvent(TableModel source, int firstRow, int lastRow)90 public TableModelEvent(TableModel source, int firstRow, int lastRow) 91 { 92 this(source, firstRow, lastRow, ALL_COLUMNS, UPDATE); 93 } 94 95 /** 96 * Creates a <code>TableModelEvent</code> event. 97 * 98 * @param source The source object 99 * @param firstRow The first row of update 100 * @param lastRow The last row of update 101 * @param column The affected column 102 */ TableModelEvent(TableModel source, int firstRow, int lastRow, int column)103 public TableModelEvent(TableModel source, int firstRow, int lastRow, int column) 104 { 105 this(source, firstRow, lastRow, column, UPDATE); 106 } 107 108 /** 109 * Creates a <code>TableModelEvent</code> event. 110 * 111 * @param source The source object 112 * @param firstRow The first row of update 113 * @param lastRow The last row of update 114 * @param column The affected column 115 * @param type The type of change 116 */ TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type)117 public TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type) 118 { 119 super(source); 120 this.firstRow = firstRow; 121 this.lastRow = lastRow; 122 this.column = column; 123 this.type = type; 124 } 125 126 /** 127 * Returns the affected column of this event. 128 */ getColumn()129 public int getColumn() 130 { 131 return column; 132 } 133 134 /** 135 * Returns the first affected row of this event. 136 */ getFirstRow()137 public int getFirstRow() 138 { 139 return firstRow; 140 } 141 142 /** 143 * Returns the last affected row of this event. 144 */ getLastRow()145 public int getLastRow() 146 { 147 return lastRow; 148 } 149 150 /** 151 * Returns the type of change of this event. 152 */ getType()153 public int getType() 154 { 155 return type; 156 } 157 } 158