Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing.event
Class TableModelEvent

    java.lang.Object
      |
      +--java.util.EventObject
            |
            +--javax.swing.event.TableModelEvent

public class TableModelEvent
extends java.util.EventObject

TableModelEvent is used to notify listeners that a table model has changed. The model event describes changes to a TableModel and all references to rows and columns are in the co-ordinate system of the model. Depending on the parameters used in the constructors, the TableModelevent can be used to specify the following types of changes:

     TableModelEvent(source);              //  The data, ie. all rows changed
     TableModelEvent(source, HEADER_ROW);  //  Structure change, reallcoate TableColumns
     TableModelEvent(source, 1);           //  Row 1 changed
     TableModelEvent(source, 3, 6);        //  Rows 3 to 6 inclusive changed
     TableModelEvent(source, 2, 2, 6);     //  Cell at (2, 6) changed
     TableModelEvent(source, 3, 6, ALL_COLUMNS, INSERT); // Rows (3, 6) were inserted
     TableModelEvent(source, 3, 6, ALL_COLUMNS, DELETE); // Rows (3, 6) were deleted

It is possible to use other combinations of the parameters, not all of them are meaningful. By subclassing, you can add other information, for example: whether the event WILL happen or DID happen. This makes the specification of rows in DELETE events more useful but has not been included in the swing package as the JTable only needs post-event notification.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. A future release of Swing will provide support for long term persistence.

See Also:
  `TableModel`, Serialized Form

Field Summary
`static int` | `ALL_COLUMNS` Specifies all columns in a row or rows.
`protected int` | `column`
`static int` | `DELETE` Identifies the removal of rows or columns.
`protected int` | `firstRow`
`static int` | `HEADER_ROW` Identifies the header row.
`static int` | `INSERT` Identifies the addtion of new rows or columns.
`protected int` | `lastRow`
`protected int` | `type`
`static int` | `UPDATE` Identifies a change to existing data.

Fields inherited from class java.util.EventObject
`source`

Constructor Summary
`TableModelEvent(TableModel source)` All row data in the table has changed, listeners should discard any state that was based on the rows and requery the TableModel to get the new row count and all the appropriate values.
`TableModelEvent(TableModel source, int row)` This row of data has been updated.
`TableModelEvent(TableModel source, int firstRow, int lastRow)` The data in rows [firstRow, lastRow] have been updated.
`TableModelEvent(TableModel source, int firstRow, int lastRow, int column)` The cells in column column in the range [firstRow, lastRow] have been updated.
`TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type)` The cells from (firstRow, column) to (lastRow, column) have been changed.

Method Summary
`int` | `getColumn()` Returns the column for the event.
`int` | `getFirstRow()` Returns the first row that changed.
`int` | `getLastRow()` Returns the last row that changed.
`int` | `getType()` Returns the type of event - one of: INSERT, UPDATE and DELETE.

Methods inherited from class java.util.EventObject
`getSource, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### INSERT

    public static final int INSERT

  Identifies the addtion of new rows or columns.

### UPDATE

    public static final int UPDATE

  Identifies a change to existing data.

### DELETE

    public static final int DELETE

  Identifies the removal of rows or columns.

### HEADER_ROW

    public static final int HEADER_ROW

  Identifies the header row.

### ALL_COLUMNS

    public static final int ALL_COLUMNS

  Specifies all columns in a row or rows.

### type

    protected int type

### firstRow

    protected int firstRow

### lastRow

    protected int lastRow

### column

    protected int column

Constructor Detail

### TableModelEvent

    public TableModelEvent(TableModel source)

  All row data in the table has changed, listeners should discard any state that was based on the rows and requery the TableModel to get the new row count and all the appropriate values. The JTable will repaint the entire visible region on recieving this event, querying the model for the cell values that are visble. The structure of the table ie, the column names, types and order have not changed.

### TableModelEvent

    public TableModelEvent(TableModel source,
                           int row)

  This row of data has been updated. To denote the arrival of a completely new table with a different structure use `HEADER_ROW` as the value for the row. When the JTable recieves this event and its autoCreateColumnsFromModel flag is set it discards any TableColumns that it had and reallocates default ones in the order they appear in the model. This is the same as calling `setModel(TableModel)` on the JTable.

### TableModelEvent

    public TableModelEvent(TableModel source,
                           int firstRow,
                           int lastRow)

  The data in rows [firstRow, lastRow] have been updated.

### TableModelEvent

    public TableModelEvent(TableModel source,
                           int firstRow,
                           int lastRow,
                           int column)

  The cells in column column in the range [firstRow, lastRow] have been updated.

### TableModelEvent

    public TableModelEvent(TableModel source,
                           int firstRow,
                           int lastRow,
                           int column,
                           int type)

  The cells from (firstRow, column) to (lastRow, column) have been changed. The column refers to the column index of the cell in the model's co-ordinate system. When column is ALL_COLUMNS, all cells in the specified range of rows are considered changed.

  The type should be one of: INSERT, UPDATE and DELETE.

Method Detail

### getFirstRow

    public int getFirstRow()

  Returns the first row that changed. HEADER_ROW means the meta data, ie. names, types and order of the columns.

### getLastRow

    public int getLastRow()

  Returns the last row that changed.

### getColumn

    public int getColumn()

  Returns the column for the event. If the return value is ALL_COLUMNS; it means every column in the specified rows changed.

### getType

    public int getType()

  Returns the type of event - one of: INSERT, UPDATE and DELETE.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.