Package org.jfree.data.xy
Class XYDatasetTableModel
- java.lang.Object
-
- javax.swing.table.AbstractTableModel
-
- org.jfree.data.xy.XYDatasetTableModel
-
- All Implemented Interfaces:
java.io.Serializable
,java.util.EventListener
,javax.swing.table.TableModel
,DatasetChangeListener
public class XYDatasetTableModel extends javax.swing.table.AbstractTableModel implements javax.swing.table.TableModel, DatasetChangeListener
A READ-ONLY wrapper around aTableXYDataset
to convert it to a table model for use in a JTable. The first column of the table shows the x-values, the remaining columns show the y-values for each series (series 0 appears in column 1, series 1 appears in column 2, etc).TO DO:
- implement proper naming for x axis (getColumnName)
- implement setValueAt to remove READ-ONLY constraint (not sure how)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description (package private) TableXYDataset
model
The dataset.
-
Constructor Summary
Constructors Constructor Description XYDatasetTableModel()
Default constructor.XYDatasetTableModel(TableXYDataset dataset)
Creates a new table model based on the specified dataset.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
datasetChanged(DatasetChangeEvent event)
Receives notification that the underlying dataset has changed.int
getColumnCount()
Gets the number of columns in the model.java.lang.String
getColumnName(int column)
Returns the column name.int
getRowCount()
Returns the number of rows.java.lang.Object
getValueAt(int row, int column)
Returns a value of the specified cell.boolean
isCellEditable(int row, int column)
Returns a flag indicating whether or not the specified cell is editable.void
setModel(TableXYDataset dataset)
Sets the model (dataset).void
setValueAt(java.lang.Object value, int row, int column)
Updates theXYDataset
if allowed.-
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, removeTableModelListener
-
-
-
-
Field Detail
-
model
TableXYDataset model
The dataset.
-
-
Constructor Detail
-
XYDatasetTableModel
public XYDatasetTableModel()
Default constructor.
-
XYDatasetTableModel
public XYDatasetTableModel(TableXYDataset dataset)
Creates a new table model based on the specified dataset.- Parameters:
dataset
- the dataset.
-
-
Method Detail
-
setModel
public void setModel(TableXYDataset dataset)
Sets the model (dataset).- Parameters:
dataset
- the dataset.
-
getRowCount
public int getRowCount()
Returns the number of rows.- Specified by:
getRowCount
in interfacejavax.swing.table.TableModel
- Returns:
- The row count.
-
getColumnCount
public int getColumnCount()
Gets the number of columns in the model.- Specified by:
getColumnCount
in interfacejavax.swing.table.TableModel
- Returns:
- The number of columns in the model.
-
getColumnName
public java.lang.String getColumnName(int column)
Returns the column name.- Specified by:
getColumnName
in interfacejavax.swing.table.TableModel
- Overrides:
getColumnName
in classjavax.swing.table.AbstractTableModel
- Parameters:
column
- the column index.- Returns:
- The column name.
-
getValueAt
public java.lang.Object getValueAt(int row, int column)
Returns a value of the specified cell. Column 0 is the X axis, Columns 1 and over are the Y axis- Specified by:
getValueAt
in interfacejavax.swing.table.TableModel
- Parameters:
row
- the row number.column
- the column number.- Returns:
- The value of the specified cell.
-
datasetChanged
public void datasetChanged(DatasetChangeEvent event)
Receives notification that the underlying dataset has changed.- Specified by:
datasetChanged
in interfaceDatasetChangeListener
- Parameters:
event
- the event- See Also:
DatasetChangeListener
-
isCellEditable
public boolean isCellEditable(int row, int column)
Returns a flag indicating whether or not the specified cell is editable.- Specified by:
isCellEditable
in interfacejavax.swing.table.TableModel
- Overrides:
isCellEditable
in classjavax.swing.table.AbstractTableModel
- Parameters:
row
- the row number.column
- the column number.- Returns:
true
if the specified cell is editable.
-
setValueAt
public void setValueAt(java.lang.Object value, int row, int column)
Updates theXYDataset
if allowed.- Specified by:
setValueAt
in interfacejavax.swing.table.TableModel
- Overrides:
setValueAt
in classjavax.swing.table.AbstractTableModel
- Parameters:
value
- the new value.row
- the row.column
- the column.
-
-