Class TableSorter
- java.lang.Object
-
- javax.swing.table.AbstractTableModel
-
- org.openscience.jmol.app.janocchio.TableSorter
-
- All Implemented Interfaces:
java.io.Serializable,javax.swing.table.TableModel
public class TableSorter extends javax.swing.table.AbstractTableModel- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classTableSorter.Arrowprivate static classTableSorter.Directiveprivate classTableSorter.MouseHandlerprivate classTableSorter.Rowprivate classTableSorter.SortableHeaderRendererprivate classTableSorter.TableModelHandler
-
Field Summary
Fields Modifier and Type Field Description static intASCENDINGprivate java.util.MapcolumnComparatorsstatic java.util.ComparatorCOMPARABLE_COMAPRATORstatic intDESCENDINGprivate static TableSorter.DirectiveEMPTY_DIRECTIVEstatic java.util.ComparatorLEXICAL_COMPARATORprivate int[]modelToViewprivate java.awt.event.MouseListenermouseListenerstatic intNOT_SORTEDprivate java.util.ListsortingColumnsprivate javax.swing.table.JTableHeadertableHeaderprotected javax.swing.table.TableModeltableModelprivate javax.swing.event.TableModelListenertableModelListenerprivate TableSorter.Row[]viewToModel
-
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 private voidcancelSorting()private voidclearSortingState()java.lang.ClassgetColumnClass(int column)intgetColumnCount()java.lang.StringgetColumnName(int column)protected java.util.ComparatorgetComparator(int column)private TableSorter.DirectivegetDirective(int column)protected javax.swing.IcongetHeaderRendererIcon(int column, int size)private int[]getModelToView()intgetRowCount()intgetSortingStatus(int column)javax.swing.table.JTableHeadergetTableHeader()javax.swing.table.TableModelgetTableModel()java.lang.ObjectgetValueAt(int row, int column)private TableSorter.Row[]getViewToModel()booleanisCellEditable(int row, int column)booleanisSorting()intmodelIndex(int viewIndex)voidsetColumnComparator(java.lang.Class type, java.util.Comparator comparator)voidsetSortingStatus(int column, int status)voidsetTableHeader(javax.swing.table.JTableHeader tableHeader)voidsetTableModel(javax.swing.table.TableModel tableModel)voidsetValueAt(java.lang.Object aValue, int row, int column)private voidsortingStatusChanged()-
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
-
EMPTY_DIRECTIVE
private static TableSorter.Directive EMPTY_DIRECTIVE
-
COMPARABLE_COMAPRATOR
public static final java.util.Comparator COMPARABLE_COMAPRATOR
-
LEXICAL_COMPARATOR
public static final java.util.Comparator LEXICAL_COMPARATOR
-
viewToModel
private TableSorter.Row[] viewToModel
-
modelToView
private int[] modelToView
-
tableHeader
private javax.swing.table.JTableHeader tableHeader
-
mouseListener
private java.awt.event.MouseListener mouseListener
-
tableModelListener
private javax.swing.event.TableModelListener tableModelListener
-
columnComparators
private java.util.Map columnComparators
-
sortingColumns
private java.util.List sortingColumns
-
-
Method Detail
-
clearSortingState
private void clearSortingState()
-
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()
-
getDirective
private TableSorter.Directive getDirective(int column)
-
getSortingStatus
public int getSortingStatus(int column)
-
sortingStatusChanged
private void sortingStatusChanged()
-
setSortingStatus
public void setSortingStatus(int column, int status)
-
getHeaderRendererIcon
protected javax.swing.Icon getHeaderRendererIcon(int column, int size)
-
cancelSorting
private void cancelSorting()
-
setColumnComparator
public void setColumnComparator(java.lang.Class type, java.util.Comparator comparator)
-
getComparator
protected java.util.Comparator getComparator(int column)
-
getViewToModel
private TableSorter.Row[] getViewToModel()
-
modelIndex
public int modelIndex(int viewIndex)
-
getModelToView
private int[] getModelToView()
-
getRowCount
public int getRowCount()
-
getColumnCount
public int getColumnCount()
-
getColumnName
public java.lang.String getColumnName(int column)
- Specified by:
getColumnNamein interfacejavax.swing.table.TableModel- Overrides:
getColumnNamein classjavax.swing.table.AbstractTableModel
-
getColumnClass
public java.lang.Class getColumnClass(int column)
- Specified by:
getColumnClassin interfacejavax.swing.table.TableModel- Overrides:
getColumnClassin classjavax.swing.table.AbstractTableModel
-
isCellEditable
public boolean isCellEditable(int row, int column)- Specified by:
isCellEditablein interfacejavax.swing.table.TableModel- Overrides:
isCellEditablein 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:
setValueAtin interfacejavax.swing.table.TableModel- Overrides:
setValueAtin classjavax.swing.table.AbstractTableModel
-
-