Class ArffSortedTableModel

All Implemented Interfaces:
Serializable, EventListener, TableModelListener, TableModel, Undoable

public class ArffSortedTableModel extends SortedTableModel implements Undoable
A sorter for the ARFF-Viewer - necessary because of the custom CellRenderer.
Version:
$Revision: 14907 $
Author:
FracPete (fracpete at waikato dot ac dot nz)
See Also:
  • Constructor Details

    • ArffSortedTableModel

      public ArffSortedTableModel(String filename, AbstractFileLoader... loaders)
      initializes the sorter w/o a model, but loads the given file and creates from that a model
      Parameters:
      filename - the file to load
      loaders - optional varargs loader to use
    • ArffSortedTableModel

      public ArffSortedTableModel(Instances data)
      initializes the sorter w/o a model, but uses the given data to create a model from that
      Parameters:
      data - the data to use
    • ArffSortedTableModel

      public ArffSortedTableModel(TableModel model)
      initializes the sorter with the given model
      Parameters:
      model - the model to use
  • Method Details

    • isNotificationEnabled

      public boolean isNotificationEnabled()
      returns whether the notification of changes is enabled
      Returns:
      true if notification of changes is enabled
    • setNotificationEnabled

      public void setNotificationEnabled(boolean enabled)
      sets whether the notification of changes is enabled
      Parameters:
      enabled - enables/disables the notification
    • isUndoEnabled

      public boolean isUndoEnabled()
      returns whether undo support is enabled
      Specified by:
      isUndoEnabled in interface Undoable
      Returns:
      true if undo support is enabled
    • setUndoEnabled

      public void setUndoEnabled(boolean enabled)
      sets whether undo support is enabled
      Specified by:
      setUndoEnabled in interface Undoable
      Parameters:
      enabled - whether to enable/disable undo support
    • isReadOnly

      public boolean isReadOnly()
      returns whether the model is read-only
      Returns:
      true if model is read-only
    • setReadOnly

      public void setReadOnly(boolean value)
      sets whether the model is read-only
      Parameters:
      value - if true the model is set to read-only
    • getAttributeIndex

      public int getAttributeIndex(int columnIndex)
      Returns the attribute index for the given column index.
      Parameters:
      columnIndex - the column index
      Returns:
      the attribute index
    • isAttribute

      public boolean isAttribute(int columnIndex)
      Check if given index is in range of column indices for attributes
      Parameters:
      columnIndex - the column index
      Returns:
      true if the column corresponds to attribute
    • getInstancesValueAt

      public double getInstancesValueAt(int rowIndex, int columnIndex)
      returns the double value of the underlying Instances object at the given position, -1 if out of bounds
      Parameters:
      rowIndex - the row index
      columnIndex - the column index
      Returns:
      the underlying value in the Instances object
    • getModelValueAt

      public Object getModelValueAt(int rowIndex, int columnIndex)
      returns the value at the given position
      Parameters:
      rowIndex - the row index
      columnIndex - the column index
      Returns:
      the value of the model at the given position
    • getType

      public int getType(int columnIndex)
      returns the TYPE of the attribute at the given position
      Parameters:
      columnIndex - the index of the column
      Returns:
      the attribute type
    • getType

      public int getType(int rowIndex, int columnIndex)
      returns the TYPE of the attribute at the given position
      Parameters:
      rowIndex - the index of the row
      columnIndex - the index of the column
      Returns:
      the attribute type
    • deleteAttributeAt

      public void deleteAttributeAt(int columnIndex)
      deletes the attribute at the given col index
      Parameters:
      columnIndex - the index of the attribute to delete
    • deleteAttributes

      public void deleteAttributes(int[] columnIndices)
      deletes the attributes at the given indices
      Parameters:
      columnIndices - the column indices
    • renameAttributeAt

      public void renameAttributeAt(int columnIndex, String newName)
      renames the attribute at the given col index
      Parameters:
      columnIndex - the index of the column
      newName - the new name of the attribute
    • setAttributeWeightAt

      public void setAttributeWeightAt(int columnIndex, double weight)
      sets the weight of the attribute at the given col index
      Parameters:
      columnIndex - the index of the column
      weight - the new weight of the attribute
    • attributeAsClassAt

      public void attributeAsClassAt(int columnIndex)
      sets the attribute at the given col index as the new class attribute
      Parameters:
      columnIndex - the index of the column
    • deleteInstanceAt

      public void deleteInstanceAt(int rowIndex)
      deletes the instance at the given index
      Parameters:
      rowIndex - the index of the row
    • insertInstance

      public void insertInstance(int index)
      Insert a new instance (all values 0) at the given index. If index is < 0, then inserts at the end of the dataset
      Parameters:
      index - the index to insert at
    • setInstanceWeight

      public void setInstanceWeight(int index, double weight)
      Sets the weight of the selected instance
      Parameters:
      index - the index of the instance
      weight - the weight
    • deleteInstances

      public void deleteInstances(int[] rowIndices)
      deletes the instances at the given positions
      Parameters:
      rowIndices - the indices to delete
    • sortInstances

      public void sortInstances(int columnIndex)
      sorts the instances via the given attribute
      Parameters:
      columnIndex - the index of the column
    • sortInstances

      public void sortInstances(int columnIndex, boolean ascending)
      sorts the instances via the given attribute
      Parameters:
      columnIndex - the index of the column
      ascending - ascending if true, otherwise descending
    • sort

      public void sort(int columnIndex, boolean ascending)
      sorts the table over the given column, either ascending or descending
      Overrides:
      sort in class SortedTableModel
      Parameters:
      columnIndex - the column to sort over
      ascending - ascending if true, otherwise descending
    • getAttributeColumn

      public int getAttributeColumn(String name)
      returns the column of the given attribute name, -1 if not found
      Parameters:
      name - the name of the attribute
      Returns:
      the column index or -1 if not found
    • isMissingAt

      public boolean isMissingAt(int rowIndex, int columnIndex)
      checks whether the value at the given position is missing
      Parameters:
      rowIndex - the row index
      columnIndex - the column index
      Returns:
      true if the value at the position is missing
    • setInstances

      public void setInstances(Instances data)
      sets the data
      Parameters:
      data - the data to use
    • getInstances

      public Instances getInstances()
      returns the data
      Returns:
      the current data
    • getAttributeAt

      public Attribute getAttributeAt(int columnIndex)
      returns the attribute at the given index, can be NULL if not an attribute column
      Parameters:
      columnIndex - the index of the column
      Returns:
      the attribute at the position
    • addTableModelListener

      public void addTableModelListener(TableModelListener l)
      adds a listener to the list that is notified each time a change to data model occurs
      Specified by:
      addTableModelListener in interface TableModel
      Overrides:
      addTableModelListener in class AbstractTableModel
      Parameters:
      l - the listener to add
    • removeTableModelListener

      public void removeTableModelListener(TableModelListener l)
      removes a listener from the list that is notified each time a change to the data model occurs
      Specified by:
      removeTableModelListener in interface TableModel
      Overrides:
      removeTableModelListener in class AbstractTableModel
      Parameters:
      l - the listener to remove
    • notifyListener

      public void notifyListener(TableModelEvent e)
      notfies all listener of the change of the model
      Parameters:
      e - the event to send to the listeners
    • clearUndo

      public void clearUndo()
      removes the undo history
      Specified by:
      clearUndo in interface Undoable
    • canUndo

      public boolean canUndo()
      returns whether an undo is possible, i.e. whether there are any undo points saved so far
      Specified by:
      canUndo in interface Undoable
      Returns:
      returns TRUE if there is an undo possible
    • undo

      public void undo()
      undoes the last action
      Specified by:
      undo in interface Undoable
    • addUndoPoint

      public void addUndoPoint()
      adds an undo point to the undo history
      Specified by:
      addUndoPoint in interface Undoable
    • setShowAttributeIndex

      public void setShowAttributeIndex(boolean value)
      Sets whether to display the attribute index in the header.
      Parameters:
      value - if true then the attribute indices are displayed in the table header
    • getShowAttributeIndex

      public boolean getShowAttributeIndex()
      Returns whether to display the attribute index in the header.
      Returns:
      true if the attribute indices are displayed in the table header