org.pentaho.reporting.engine.classic.core.util
Class TypedTableModel

java.lang.Object
  extended by javax.swing.table.AbstractTableModel
      extended by org.pentaho.reporting.engine.classic.core.util.TypedTableModel
All Implemented Interfaces:
Serializable, TableModel

public class TypedTableModel
extends AbstractTableModel

Todo: Document me!

Date: 30.06.2009 Time: 16:53:27

Author:
Thomas Morgner.
See Also:
Serialized Form

Constructor Summary
TypedTableModel()
           
TypedTableModel(int rowIncrement, int columnIncrement)
           
TypedTableModel(String[] columnNames)
           
TypedTableModel(String[] columnNames, Class[] columnClasses)
           
TypedTableModel(String[] columnNames, Class[] columnClasses, int rowCount)
           
 
Method Summary
 void addColumn(String name, Class type)
           
 void addRow(Object[] objects)
           
 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.
 String getColumnName(int columnIndex)
          Returns the name of the column at columnIndex.
 int getRowCount()
          Returns the number of rows in the model.
 Object getValueAt(int rowIndex, int columnIndex)
          Returns the value for the cell at columnIndex and rowIndex.
 boolean isCellEditable(int rowIndex, int columnIndex)
          Returns true if the cell at rowIndex and columnIndex is editable.
 void setColumnName(int colIndex, String name)
           
 void setColumnType(int colIndex, Class type)
           
 void setValueAt(Object aValue, int rowIndex, int columnIndex)
          Sets the value in the cell at columnIndex and rowIndex to aValue.
 String toString()
           
 
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TypedTableModel

public TypedTableModel()

TypedTableModel

public TypedTableModel(int rowIncrement,
                       int columnIncrement)

TypedTableModel

public TypedTableModel(String[] columnNames)

TypedTableModel

public TypedTableModel(String[] columnNames,
                       Class[] columnClasses)

TypedTableModel

public TypedTableModel(String[] columnNames,
                       Class[] columnClasses,
                       int rowCount)
Method Detail

addColumn

public void addColumn(String name,
                      Class type)

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.

Returns:
the number of rows in the model
See Also:
getColumnCount()

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.

Returns:
the number of columns in the model
See Also:
getRowCount()

getColumnName

public 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.

Specified by:
getColumnName in interface TableModel
Overrides:
getColumnName in class AbstractTableModel
Parameters:
columnIndex - the index of the column
Returns:
the name of the column

getColumnClass

public 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.

Specified by:
getColumnClass in interface TableModel
Overrides:
getColumnClass in class AbstractTableModel
Parameters:
columnIndex - the index of the column
Returns:
the common ancestor class of the object values in the model.

isCellEditable

public boolean isCellEditable(int rowIndex,
                              int columnIndex)
Returns true if the cell at rowIndex and columnIndex is editable. Otherwise, setValueAt on the cell will not change the value of that cell.

Specified by:
isCellEditable in interface TableModel
Overrides:
isCellEditable in class AbstractTableModel
Parameters:
rowIndex - the row whose value to be queried
columnIndex - the column whose value to be queried
Returns:
true if the cell is editable
See Also:
setValueAt(java.lang.Object, int, int)

getValueAt

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

Parameters:
rowIndex - the row whose value is to be queried
columnIndex - the column whose value is to be queried
Returns:
the value Object at the specified cell

setValueAt

public void setValueAt(Object aValue,
                       int rowIndex,
                       int columnIndex)
Sets the value in the cell at columnIndex and rowIndex to aValue.

Specified by:
setValueAt in interface TableModel
Overrides:
setValueAt in class AbstractTableModel
Parameters:
aValue - the new value
rowIndex - the row whose value is to be changed
columnIndex - the column whose value is to be changed
See Also:
getValueAt(int, int), isCellEditable(int, int)

setColumnType

public void setColumnType(int colIndex,
                          Class type)

setColumnName

public void setColumnName(int colIndex,
                          String name)

addRow

public void addRow(Object[] objects)

toString

public String toString()
Overrides:
toString in class Object