edu.psu.geovista.app.spreadsheet.table
Class SSTableModel
java.lang.Object
javax.swing.table.AbstractTableModel
javax.swing.table.DefaultTableModel
edu.psu.geovista.app.spreadsheet.table.SSTableModel
- All Implemented Interfaces:
- java.io.Serializable, javax.swing.table.TableModel
- public class SSTableModel
- extends javax.swing.table.DefaultTableModel
- See Also:
- Serialized Form
| Fields inherited from class javax.swing.table.DefaultTableModel |
columnIdentifiers, dataVector |
| Fields inherited from class javax.swing.table.AbstractTableModel |
listenerList |
|
Method Summary |
void |
addColumn(java.lang.Object columnName)
|
void |
addColumn(java.lang.Object columnName,
java.util.Vector columnData)
|
void |
clearSort()
|
java.awt.Point |
getCellAddress(Cell cell)
return a cell's edu.psu.geovista.app.spreadsheet.model address. |
java.lang.Class |
getColumnClass(int c)
Jin: Even you use table.setDefaultEditor(edu.psu.geovista.app.spreadsheet.formula.Cell.class, new CellFomulaEditor(new JTextField()));
It still not work since JTable.getDefaultEditor(Class columnClass) is passed in a Object.class, not edu.psu.geovista.app.spreadsheet.formula.Cell.class
This is how getDefaultEditor() called:
editor = getDefaultEditor(getColumnClass(column));
By default(in AbstractTableModel):getColumnClass return a Object.class. |
java.lang.String |
getColumnName(int col)
|
java.lang.Object |
getRealModelValueAt(int row,
int column)
|
SSTable |
getTable()
|
java.lang.Object |
getValueAt(int srow,
int scolumn)
|
void |
insertRow(int row,
java.lang.Object[] rowData)
|
void |
insertRow(int row,
java.util.Vector rowData)
|
boolean |
isCellEditable(int row,
int column)
All Cells other than those in column 0( which is index) are editable. |
void |
reCalHeader()
|
void |
removeColumn(int colIndex)
|
void |
removeRow(int row)
|
void |
setDataVector(java.util.Vector dataVector,
java.util.Vector columnIdentifiers)
Set data |
void |
setTable(SSTable table)
|
void |
setValueAt(java.lang.Object data,
int row,
int col)
|
void |
sortColumns(int col,
int[] cols,
boolean ascending)
|
void |
sortRange(int col,
int[] rows,
int[] cols,
boolean ascending)
|
void |
sortRows(int col,
int[] rows,
boolean ascending)
sort rows |
void |
sortTable(int col,
boolean ascending)
sort entire table |
| Methods inherited from class javax.swing.table.DefaultTableModel |
addColumn, addRow, addRow, convertToVector, convertToVector, getColumnCount, getDataVector, getRowCount, moveRow, newDataAvailable, newRowsAdded, rowsRemoved, setColumnCount, setColumnIdentifiers, setColumnIdentifiers, setDataVector, setNumRows, setRowCount |
| 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 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
NUM_ROW
public static final int NUM_ROW
- See Also:
- Constant Field Values
NUM_COL
public static final int NUM_COL
- See Also:
- Constant Field Values
BASE_ROW
public static final int BASE_ROW
- See Also:
- Constant Field Values
BASE_COL
public static final int BASE_COL
- See Also:
- Constant Field Values
SSTableModel
public SSTableModel()
removeColumn
public void removeColumn(int colIndex)
getRealModelValueAt
public java.lang.Object getRealModelValueAt(int row,
int column)
getValueAt
public java.lang.Object getValueAt(int srow,
int scolumn)
setValueAt
public void setValueAt(java.lang.Object data,
int row,
int col)
- Parameters:
row - index in Model(for outside point view)
getColumnClass
public java.lang.Class getColumnClass(int c)
- Jin: Even you use table.setDefaultEditor(edu.psu.geovista.app.spreadsheet.formula.Cell.class, new CellFomulaEditor(new JTextField()));
It still not work since JTable.getDefaultEditor(Class columnClass) is passed in a Object.class, not edu.psu.geovista.app.spreadsheet.formula.Cell.class
This is how getDefaultEditor() called:
editor = getDefaultEditor(getColumnClass(column));
By default(in AbstractTableModel):getColumnClass return a Object.class. you MUST overide it and return a edu.psu.geovista.app.spreadsheet.formula.Cell.class
This is same for setting edu.psu.geovista.app.spreadsheet.formula.Cell Render
JTable uses this method to determine the default renderer
editor for each cell. This method tells JTable to use
CellRender and CellFormulaEditor.
- Parameters:
c - the column for which we need to determine the class
- Returns:
- edu.psu.geovista.app.spreadsheet.formula.Cell class
isCellEditable
public boolean isCellEditable(int row,
int column)
- All Cells other than those in column 0( which is index) are editable.
- Parameters:
row - the row coordinatecolumn - the column coordinate
- Returns:
- true if cell is editable
getColumnName
public java.lang.String getColumnName(int col)
reCalHeader
public void reCalHeader()
addColumn
public void addColumn(java.lang.Object columnName,
java.util.Vector columnData)
addColumn
public void addColumn(java.lang.Object columnName)
sortTable
public void sortTable(int col,
boolean ascending)
- sort entire table
sortRows
public void sortRows(int col,
int[] rows,
boolean ascending)
- sort rows
sortColumns
public void sortColumns(int col,
int[] cols,
boolean ascending)
sortRange
public void sortRange(int col,
int[] rows,
int[] cols,
boolean ascending)
insertRow
public void insertRow(int row,
java.util.Vector rowData)
insertRow
public void insertRow(int row,
java.lang.Object[] rowData)
removeRow
public void removeRow(int row)
- Parameters:
row - edu.psu.geovista.app.spreadsheet.model's row index
if sort, it will be the index for sort edu.psu.geovista.app.spreadsheet.model.
real edu.psu.geovista.app.spreadsheet.model index is transparent to outside
getCellAddress
public java.awt.Point getCellAddress(Cell cell)
- return a cell's edu.psu.geovista.app.spreadsheet.model address.
If table is sort, only return the sort edu.psu.geovista.app.spreadsheet.model address
real edu.psu.geovista.app.spreadsheet.model address is transparent to outside
setDataVector
public void setDataVector(java.util.Vector dataVector,
java.util.Vector columnIdentifiers)
- Set data
clearSort
public void clearSort()
getTable
public SSTable getTable()
setTable
public void setTable(SSTable table)
Copyright © 1996-2003 GeoVista Center. All Rights Reserved.