zinger.bsheet
Class BSHTableModelComparable

java.lang.Object
  extended by zinger.bsheet.BSHTableModelComparable
All Implemented Interfaces:
java.lang.Comparable

public class BSHTableModelComparable
extends java.lang.Object
implements java.lang.Comparable

Data row wrapper used for sorting. Sorting BSHTableModel data works by storing raw data in the wrapper objects and then comparing evaluated values. Comparisons are made in the order of columns provided using custom comparators, if present.

See Also:
BSHTableModel.sort(int, int, int[], java.util.Comparator[])

Field Summary
protected  int[] columns
           
protected  java.util.Comparator[] comparators
           
protected  java.lang.Object[] data
           
protected  BSHTableModel model
           
protected  int originalRowIndex
           
 
Constructor Summary
BSHTableModelComparable(BSHTableModel model, int originalRowIndex, int[] columns, java.util.Comparator[] comparators)
          Constructs comparison data row wrapper.
 
Method Summary
 int compareTo(java.lang.Object o)
           
 java.lang.Object getComparisonValue(int valueIndex)
          Returns value used for comparison evaluation.
 java.lang.Object getDataValue(int valueIndex)
           
 BSHTableModel getModel()
           
 int getOriginalRowIndex()
           
protected  void populateData()
          Populates data wrapper with data from BSHTableModel object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

model

protected final BSHTableModel model

originalRowIndex

protected final int originalRowIndex

columns

protected final int[] columns

comparators

protected final java.util.Comparator[] comparators

data

protected final java.lang.Object[] data
Constructor Detail

BSHTableModelComparable

public BSHTableModelComparable(BSHTableModel model,
                               int originalRowIndex,
                               int[] columns,
                               java.util.Comparator[] comparators)
Constructs comparison data row wrapper. Calls populateData().

See Also:
populateData()
Method Detail

populateData

protected void populateData()
Populates data wrapper with data from BSHTableModel object.

See Also:
getModel()

getModel

public BSHTableModel getModel()

getOriginalRowIndex

public int getOriginalRowIndex()

compareTo

public int compareTo(java.lang.Object o)
              throws java.lang.ClassCastException
Specified by:
compareTo in interface java.lang.Comparable
Throws:
java.lang.ClassCastException

getComparisonValue

public java.lang.Object getComparisonValue(int valueIndex)
Returns value used for comparison evaluation. Calls evalValueAt(int, int) method in the model.

Parameters:
valueIndex - internal value index
See Also:
BSHTableModel.evalValueAt(int, int)

getDataValue

public java.lang.Object getDataValue(int valueIndex)