Package jadex.commons.gui.jtable
Class TableSorter
- java.lang.Object
-
- javax.swing.table.AbstractTableModel
-
- jadex.commons.gui.jtable.TableSorter
-
- All Implemented Interfaces:
java.io.Serializable
,javax.swing.table.TableModel
public class TableSorter extends javax.swing.table.AbstractTableModel
TableSorter is a decorator for TableModels; adding sorting functionality to a supplied TableModel. TableSorter does not store or copy the data in its TableModel; instead it maintains a map from the row indexes of the view to the row indexes of the model. As requests are made of the sorter (like getValueAt(row, col)) they are passed to the underlying model after the row numbers have been translated via the internal mapping array. This way, the TableSorter appears to hold another copy of the table with the rows in a different order.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static int
ASCENDING
static java.util.Comparator
COMPARABLE_COMAPRATOR
static int
DESCENDING
static java.util.Comparator
LEXICAL_COMPARATOR
static int
NOT_SORTED
protected javax.swing.table.TableModel
tableModel
-
Constructor Summary
Constructors Constructor Description TableSorter()
TableSorter(javax.swing.table.TableModel tableModel)
TableSorter(javax.swing.table.TableModel tableModel, javax.swing.table.JTableHeader tableHeader)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class
getColumnClass(int column)
int
getColumnCount()
java.lang.String
getColumnName(int column)
protected java.util.Comparator
getComparator(int column)
protected javax.swing.Icon
getHeaderRendererIcon(int column, int size)
int
getRowCount()
int
getSortingStatus(int column)
javax.swing.table.JTableHeader
getTableHeader()
javax.swing.table.TableModel
getTableModel()
java.lang.Object
getValueAt(int row, int column)
boolean
isCellEditable(int row, int column)
boolean
isSorting()
int
modelIndex(int viewIndex)
void
setColumnComparator(java.lang.Class type, java.util.Comparator comparator)
void
setSortingStatus(int column, int status)
void
setTableHeader(javax.swing.table.JTableHeader tableHeader)
void
setTableModel(javax.swing.table.TableModel tableModel)
void
setValueAt(java.lang.Object aValue, int row, int column)
-
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener
-
-
-
-
Field Detail
-
tableModel
protected javax.swing.table.TableModel tableModel
-
DESCENDING
public static final int DESCENDING
- See Also:
- Constant Field Values
-
NOT_SORTED
public static final int NOT_SORTED
- See Also:
- Constant Field Values
-
ASCENDING
public static final int ASCENDING
- See Also:
- Constant Field Values
-
COMPARABLE_COMAPRATOR
public static final java.util.Comparator COMPARABLE_COMAPRATOR
-
LEXICAL_COMPARATOR
public static final java.util.Comparator LEXICAL_COMPARATOR
-
-
Method Detail
-
getTableModel
public javax.swing.table.TableModel getTableModel()
-
setTableModel
public void setTableModel(javax.swing.table.TableModel tableModel)
-
getTableHeader
public javax.swing.table.JTableHeader getTableHeader()
-
setTableHeader
public void setTableHeader(javax.swing.table.JTableHeader tableHeader)
-
isSorting
public boolean isSorting()
-
getSortingStatus
public int getSortingStatus(int column)
-
setSortingStatus
public void setSortingStatus(int column, int status)
-
getHeaderRendererIcon
protected javax.swing.Icon getHeaderRendererIcon(int column, int size)
-
setColumnComparator
public void setColumnComparator(java.lang.Class type, java.util.Comparator comparator)
-
getComparator
protected java.util.Comparator getComparator(int column)
-
modelIndex
public int modelIndex(int viewIndex)
-
getRowCount
public int getRowCount()
-
getColumnCount
public int getColumnCount()
-
getColumnName
public java.lang.String getColumnName(int column)
- Specified by:
getColumnName
in interfacejavax.swing.table.TableModel
- Overrides:
getColumnName
in classjavax.swing.table.AbstractTableModel
-
getColumnClass
public java.lang.Class getColumnClass(int column)
- Specified by:
getColumnClass
in interfacejavax.swing.table.TableModel
- Overrides:
getColumnClass
in classjavax.swing.table.AbstractTableModel
-
isCellEditable
public boolean isCellEditable(int row, int column)
- Specified by:
isCellEditable
in interfacejavax.swing.table.TableModel
- Overrides:
isCellEditable
in classjavax.swing.table.AbstractTableModel
-
getValueAt
public java.lang.Object getValueAt(int row, int column)
-
setValueAt
public void setValueAt(java.lang.Object aValue, int row, int column)
- Specified by:
setValueAt
in interfacejavax.swing.table.TableModel
- Overrides:
setValueAt
in classjavax.swing.table.AbstractTableModel
-
-