T
- the type of the data to be displayed.public abstract class SimbrainDataTable<T>
extends javax.swing.table.AbstractTableModel
SimbrainJTable
,
WeightMatrixViewer
,
Serialized FormModifier and Type | Field and Description |
---|---|
protected java.util.List<java.util.List<T>> |
rowData
The data.
|
Constructor and Description |
---|
SimbrainDataTable() |
Modifier and Type | Method and Description |
---|---|
void |
addTableModelListener(javax.swing.event.TableModelListener l) |
java.util.List<T> |
asFlatList()
Returns the contents of the table as a flat list.
|
java.lang.String[][] |
asStringArray()
Returns a string array representation of the table.
|
void |
fill(T value)
Fills the table with the given value.
|
java.lang.Class<?> |
getColumnClass(int columnIndex) |
int |
getColumnCount() |
java.lang.String |
getColumnName(int columnIndex) |
(package private) abstract java.lang.Class<?> |
getDataType()
Returns the datatype (T) for a given table type.
|
(package private) abstract T |
getDefaultValue()
Returns the default cell value for a given table type.
|
int |
getLogicalColumnCount()
Returns the number of columns in the underlying data, which is one less
than the number of columns in the table data.
|
T |
getLogicalValueAt(int row,
int col)
Get the value of a specific cell in the data structure backing this table
data structure.
|
int |
getRowCount() |
java.lang.Object |
getValueAt(int row,
int column) |
static com.thoughtworks.xstream.XStream |
getXStream()
Returns a properly initialized xstream object.
|
boolean |
isCellEditable(int row,
int column) |
void |
setColumnHeadings(java.util.List<java.lang.String> columnHeadings) |
void |
setDisplayColumnHeadings(boolean displayColumnHeadings)
TODO: This only works for setting from true to false.
|
void |
setLogicalValue(int row,
int column,
T value,
boolean fireEvent)
Set the value at specific position in the data underlying the table, and
specify whether to fire a changed event (false useful when a lot of
values need to be changed at once and it would waste time to update the
GUI for every such change).
|
void |
setValue(int row,
int col,
T value)
Set the value at specific position in the table.
|
void |
setValue(int row,
int column,
T value,
boolean fireEvent)
Set the value at specific position in the table, and specify whether to
fire a changed event (false useful when a lot of values need to be
changed at once and it would waste time to update the GUI for every such
change).
|
void |
setValueAt(java.lang.Object val,
int rowIndex,
int columnIndex) |
void |
shuffle()
Shuffle the rows of the dataset.
|
protected final java.util.List<java.util.List<T>> rowData
abstract T getDefaultValue()
abstract java.lang.Class<?> getDataType()
public void setValueAt(java.lang.Object val, int rowIndex, int columnIndex)
setValueAt
in interface javax.swing.table.TableModel
setValueAt
in class javax.swing.table.AbstractTableModel
public void setValue(int row, int col, T value)
row
- row indexcol
- column indexvalue
- value to addpublic void setValue(int row, int column, T value, boolean fireEvent)
row
- row indexcolumn
- column indexvalue
- value to addfireEvent
- true if an event should be fired, false otherwise.public java.lang.Object getValueAt(int row, int column)
public void setLogicalValue(int row, int column, T value, boolean fireEvent)
row
- row index in the "logical" datacolumn
- column index in the "logical" datavalue
- value to addfireEvent
- true if an event should be fired, false otherwise.public T getLogicalValueAt(int row, int col)
row
- the row indexcol
- the column indexpublic java.lang.Class<?> getColumnClass(int columnIndex)
getColumnClass
in interface javax.swing.table.TableModel
getColumnClass
in class javax.swing.table.AbstractTableModel
public boolean isCellEditable(int row, int column)
isCellEditable
in interface javax.swing.table.TableModel
isCellEditable
in class javax.swing.table.AbstractTableModel
public java.lang.String getColumnName(int columnIndex)
getColumnName
in interface javax.swing.table.TableModel
getColumnName
in class javax.swing.table.AbstractTableModel
public int getLogicalColumnCount()
public int getColumnCount()
public int getRowCount()
public void fill(T value)
value
- value to fill the table with.public void shuffle()
public java.lang.String[][] asStringArray()
public java.util.List<T> asFlatList()
public void setColumnHeadings(java.util.List<java.lang.String> columnHeadings)
columnHeadings
- the columnHeadings to setpublic void setDisplayColumnHeadings(boolean displayColumnHeadings)
displayColumnHeadings
- the displayColumnHeadings to setpublic static com.thoughtworks.xstream.XStream getXStream()
public void addTableModelListener(javax.swing.event.TableModelListener l)
addTableModelListener
in interface javax.swing.table.TableModel
addTableModelListener
in class javax.swing.table.AbstractTableModel