Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.jgoodies.binding.extras
Class DelegatingTableModel  view DelegatingTableModel download DelegatingTableModel.java

java.lang.Object
  extended byjavax.swing.table.AbstractTableModel
      extended bycom.jgoodies.binding.extras.DelegatingTableModel
All Implemented Interfaces:
java.io.Serializable, javax.swing.table.TableModel

public final class DelegatingTableModel
extends javax.swing.table.AbstractTableModel

This implementation of the TableModel interface delegates all requests to an underlying TableModel delegate. It can be used to change a JTable's model while the table is beeing displayed.

Note: This class is not yet part of the binary Binding library; it comes with the Binding distributions as an extra. The API is work in progress and may change without notice; this class may even be completely removed from future distributions. If you want to use this class, you may consider copying it into your codebase.

Version:
$Revision: 1.5 $

Nested Class Summary
private  class DelegatingTableModel.DelegateChangeHandler
           
private static class DelegatingTableModel.DummyTableModel
           
 
Field Summary
private  ValueModel delegateChannel
          Holds a model that in turn holds the delegated TableModel.
 
Fields inherited from class javax.swing.table.AbstractTableModel
listenerList
 
Constructor Summary
DelegatingTableModel()
          Constructs a TableAdaptor on a dummy TableModel.
DelegatingTableModel(ValueModel delegateChannel)
          Constructs a TableAdaptor that holds the delegated TableModel in the given delegate channel.
 
Method Summary
 java.lang.Class getColumnClass(int columnIndex)
          Returns the most specific superclass for all the cell values in the column.
 int getColumnCount()
          Returns the number of columns in the model.
 java.lang.String getColumnName(int columnIndex)
          Returns the name of the column at columnIndex.
 javax.swing.table.TableModel getDelegate()
          Returns the current TableModel delegate.
 int getRowCount()
          Returns the number of rows in the model.
 java.lang.Object getValueAt(int rowIndex, int columnIndex)
          Returns the value for the cell at columnIndex and rowIndex.
 void setDelegate(javax.swing.table.TableModel newDelegate)
          Sets a new TableModel delegate.
 
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

delegateChannel

private final ValueModel delegateChannel
Holds a model that in turn holds the delegated TableModel.

Constructor Detail

DelegatingTableModel

public DelegatingTableModel(ValueModel delegateChannel)
Constructs a TableAdaptor that holds the delegated TableModel in the given delegate channel.


DelegatingTableModel

public DelegatingTableModel()
Constructs a TableAdaptor on a dummy TableModel.

Method Detail

getDelegate

public javax.swing.table.TableModel getDelegate()
Returns the current TableModel delegate.


setDelegate

public void setDelegate(javax.swing.table.TableModel newDelegate)
Sets a new TableModel delegate.


getColumnClass

public java.lang.Class getColumnClass(int columnIndex)
Returns the most specific superclass for all the cell values in the column. This is used by the JTable to set up a default renderer and editor for the column.


getColumnCount

public int getColumnCount()
Returns the number of columns in the model. A JTable uses this method to determine how many columns it should create and display by default.


getColumnName

public java.lang.String getColumnName(int columnIndex)
Returns the name of the column at columnIndex. This is used to initialize the table's column header name. Note: this name does not need to be unique; two columns in a table can have the same name.


getRowCount

public int getRowCount()
Returns the number of rows in the model. A JTable uses this method to determine how many rows it should display. This method should be quick, as it is called frequently during rendering.


getValueAt

public java.lang.Object getValueAt(int rowIndex,
                                   int columnIndex)
Returns the value for the cell at columnIndex and rowIndex.