de.unihalle.informatik.MiToBo.gui
Class MTBTableModel

java.lang.Object
  extended by javax.swing.table.AbstractTableModel
      extended by javax.swing.table.DefaultTableModel
          extended by de.unihalle.informatik.MiToBo.gui.MTBTableModel
All Implemented Interfaces:
java.io.Serializable, javax.swing.table.TableModel
Direct Known Subclasses:
Mica2DTableModel

public class MTBTableModel
extends javax.swing.table.DefaultTableModel

Table model for MiToBo data tables.

The class implements a table model for data results in MiToBo. One main feature is the dynamic reallocation of memory when inserting new data. Objects of this class can be integrated in graphical user interfaces by using class MTBTableWindow.

Author:
moeller
See Also:
Serialized Form

Field Summary
protected  int cols
          Number of columns of the table.
protected  java.lang.Object[][] data
          The data contained in the table.
protected  de.unihalle.informatik.Alida.dataio.provider.swing.components.ALDTableWindow.TableModelDelimiter delimiter
          Delimiter to be used when exporting the model.
protected  java.util.Vector<java.lang.String> headerStrings
          Header defines.
protected  int rows
          Number of rows of the table.
 
Fields inherited from class javax.swing.table.DefaultTableModel
columnIdentifiers, dataVector
 
Fields inherited from class javax.swing.table.AbstractTableModel
listenerList
 
Constructor Summary
MTBTableModel(int r, int c)
          Default constructor.
MTBTableModel(int r, int c, java.util.Vector<java.lang.String> headers)
          Constructor with given header strings.
 
Method Summary
 void clear()
          Deletes all(!)
 int getColumnCount()
           
 java.lang.String getColumnName(int col)
           
 de.unihalle.informatik.Alida.dataio.provider.swing.components.ALDTableWindow.TableModelDelimiter getDelimiter()
          Returns the currently chosen delimiter.
 int getRowCount()
           
 java.lang.Object getValueAt(int row, int col)
           
 void insertData(java.util.Vector<java.lang.Object[]> resultData)
          Appends a set of results to the table, i.e. adds a new row at the end.
 void saveTable(java.io.File file)
          Saves the contents of the table to given file, TSV format.
 void setColumnName(int col, java.lang.String name)
          Sets the header of column to specified string.
 void setDelimiter(de.unihalle.informatik.Alida.dataio.provider.swing.components.ALDTableWindow.TableModelDelimiter delim)
          Configure the delimiter to be used when exporting the table.
 void setValueAt(java.lang.Object o, int row, int col)
           
protected  java.lang.StringBuffer[] tableToString()
          Converts the contents of the table to a string array in CSV format (suitable for import in Excel).
 
Methods inherited from class javax.swing.table.DefaultTableModel
addColumn, addColumn, addColumn, addRow, addRow, convertToVector, convertToVector, getDataVector, insertRow, insertRow, isCellEditable, moveRow, newDataAvailable, newRowsAdded, removeRow, rowsRemoved, setColumnCount, setColumnIdentifiers, setColumnIdentifiers, setDataVector, setDataVector, setNumRows, setRowCount
 
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, removeTableModelListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cols

protected int cols
Number of columns of the table.


data

protected java.lang.Object[][] data
The data contained in the table.


delimiter

protected de.unihalle.informatik.Alida.dataio.provider.swing.components.ALDTableWindow.TableModelDelimiter delimiter
Delimiter to be used when exporting the model.


headerStrings

protected java.util.Vector<java.lang.String> headerStrings
Header defines.


rows

protected int rows
Number of rows of the table.

Constructor Detail

MTBTableModel

public MTBTableModel(int r,
                     int c)
Default constructor.

Parameters:
r - Initial number of rows.
c - Initial number of columns.

MTBTableModel

public MTBTableModel(int r,
                     int c,
                     java.util.Vector<java.lang.String> headers)
Constructor with given header strings.

Parameters:
r - Initial number of rows.
c - Initial number of cols.
headers - Header strings.
Method Detail

clear

public void clear()
Deletes all(!) data inside the table and resets size.


getColumnCount

public int getColumnCount()
Specified by:
getColumnCount in interface javax.swing.table.TableModel
Overrides:
getColumnCount in class javax.swing.table.DefaultTableModel

getColumnName

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

getDelimiter

public de.unihalle.informatik.Alida.dataio.provider.swing.components.ALDTableWindow.TableModelDelimiter getDelimiter()
Returns the currently chosen delimiter.

Returns:
Delimiter for table export.

getRowCount

public int getRowCount()
Specified by:
getRowCount in interface javax.swing.table.TableModel
Overrides:
getRowCount in class javax.swing.table.DefaultTableModel

getValueAt

public java.lang.Object getValueAt(int row,
                                   int col)
Specified by:
getValueAt in interface javax.swing.table.TableModel
Overrides:
getValueAt in class javax.swing.table.DefaultTableModel

insertData

public void insertData(java.util.Vector<java.lang.Object[]> resultData)
Appends a set of results to the table, i.e. adds a new row at the end.

Parameters:
resultData - Result data to be appended.

saveTable

public void saveTable(java.io.File file)
Saves the contents of the table to given file, TSV format.


setColumnName

public void setColumnName(int col,
                          java.lang.String name)
Sets the header of column to specified string.

Parameters:
col - Index of column.
name - New title string.

setDelimiter

public void setDelimiter(de.unihalle.informatik.Alida.dataio.provider.swing.components.ALDTableWindow.TableModelDelimiter delim)
Configure the delimiter to be used when exporting the table.

Parameters:
delim - Delimiter type to use.

setValueAt

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

tableToString

protected java.lang.StringBuffer[] tableToString()
Converts the contents of the table to a string array in CSV format (suitable for import in Excel).

For separating the columns the formerly configured delimiter is used, e.g., tabulators or just spaces.

Returns:
Array with contents of table (arranged line-wise).