edu.iastate.metnet
Class NoneditableTableModel

java.lang.Object
  extended by javax.swing.table.AbstractTableModel
      extended by edu.iastate.metnet.NoneditableTableModel
All Implemented Interfaces:
java.io.Serializable, javax.swing.table.TableModel

public class NoneditableTableModel
extends javax.swing.table.AbstractTableModel

Creates a table that displays the data appropriately formatted (ints as ints, booleans as checkboxes, etc.), and which does not allow inline editing by default.

Author:
Nick Ransom
See Also:
Serialized Form

Field Summary
(package private)  java.lang.String[] columnNames
          The column headers
(package private)  java.lang.Object[][] data
          The data for the table
(package private)  java.util.Hashtable editableColumns
          A list of the editable columns
 
Fields inherited from class javax.swing.table.AbstractTableModel
listenerList
 
Constructor Summary
NoneditableTableModel(java.lang.Object[][] data, java.lang.String[] columnNames)
          Constructs a NoneditableTableModel from the given data/headers.
 
Method Summary
 void appendColumn(java.lang.Object[] newData, java.lang.String newHeader)
           
 void appendRow(java.lang.Object[] newRow)
           
 void appendRows(java.lang.Object[][] newRows)
           
 void deleteColumn(int c)
           
 java.lang.Object[] deleteRow(int r)
           
 java.lang.Object[][] deleteRows(int[] rows)
           
 java.lang.Class getColumnClass(int c)
           
 int getColumnCount()
           
 java.lang.String getColumnName(int col)
           
 java.lang.Object[][] getData()
           
 java.lang.String[] getHeaders()
           
 int getRowCount()
           
 java.lang.Object getValueAt(int row, int col)
           
 boolean hasData()
           
 void insertRowAt(java.lang.Object[] newData, int destRow)
           
 void insertRowsBefore(java.lang.Object[][] newData, int destRow)
           
 boolean isCellEditable(int row, int col)
           
 void setColumnEditable(int col, boolean isEditable)
          Determines whether the given column should be editable.
 void setColumnName(int col, java.lang.String newName)
           
 void setData(java.lang.Object[][] newData)
           
 void setValueAt(java.lang.Object value, int row, int col)
           
 
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
 

Field Detail

columnNames

java.lang.String[] columnNames
The column headers


data

java.lang.Object[][] data
The data for the table


editableColumns

java.util.Hashtable editableColumns
A list of the editable columns

Constructor Detail

NoneditableTableModel

public NoneditableTableModel(java.lang.Object[][] data,
                             java.lang.String[] columnNames)
Constructs a NoneditableTableModel from the given data/headers.

Parameters:
data - The data to use for the table.
columnNames - The column headers. Note that there must be as many column names as there are columns of data, i.e. columnNames.length should equal data.length.
Method Detail

getColumnCount

public int getColumnCount()

getRowCount

public int getRowCount()

getColumnName

public java.lang.String getColumnName(int col)
Specified by:
getColumnName in interface javax.swing.table.TableModel
Overrides:
getColumnName in class javax.swing.table.AbstractTableModel

setColumnName

public void setColumnName(int col,
                          java.lang.String newName)

getValueAt

public java.lang.Object getValueAt(int row,
                                   int col)

getColumnClass

public java.lang.Class getColumnClass(int c)
Specified by:
getColumnClass in interface javax.swing.table.TableModel
Overrides:
getColumnClass in class javax.swing.table.AbstractTableModel

isCellEditable

public boolean isCellEditable(int row,
                              int col)
Specified by:
isCellEditable in interface javax.swing.table.TableModel
Overrides:
isCellEditable in class javax.swing.table.AbstractTableModel

setColumnEditable

public void setColumnEditable(int col,
                              boolean isEditable)
Determines whether the given column should be editable. All columns are noneditable by default.

Parameters:
col - The column to make editable/noneditable.
isEditable - If true, the given column will be made editable. If false, the given column will be made noneditable.

setValueAt

public void setValueAt(java.lang.Object value,
                       int row,
                       int col)
Specified by:
setValueAt in interface javax.swing.table.TableModel
Overrides:
setValueAt in class javax.swing.table.AbstractTableModel

appendColumn

public void appendColumn(java.lang.Object[] newData,
                         java.lang.String newHeader)

appendRow

public void appendRow(java.lang.Object[] newRow)

hasData

public boolean hasData()

deleteColumn

public void deleteColumn(int c)

deleteRow

public java.lang.Object[] deleteRow(int r)

deleteRows

public java.lang.Object[][] deleteRows(int[] rows)

appendRows

public void appendRows(java.lang.Object[][] newRows)

getData

public java.lang.Object[][] getData()

getHeaders

public java.lang.String[] getHeaders()

insertRowsBefore

public void insertRowsBefore(java.lang.Object[][] newData,
                             int destRow)

insertRowAt

public void insertRowAt(java.lang.Object[] newData,
                        int destRow)

setData

public void setData(java.lang.Object[][] newData)