Class TableSorter

  • All Implemented Interfaces:
    java.io.Serializable, javax.swing.table.TableModel

    public class TableSorter
    extends javax.swing.table.AbstractTableModel
    See Also:
    Serialized Form
    • Field Detail

      • tableModel

        protected javax.swing.table.TableModel tableModel
      • COMPARABLE_COMAPRATOR

        public static final java.util.Comparator COMPARABLE_COMAPRATOR
      • LEXICAL_COMPARATOR

        public static final java.util.Comparator LEXICAL_COMPARATOR
      • 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
    • Constructor Detail

      • TableSorter

        public TableSorter()
      • TableSorter

        public TableSorter​(javax.swing.table.TableModel tableModel)
      • TableSorter

        public TableSorter​(javax.swing.table.TableModel tableModel,
                           javax.swing.table.JTableHeader tableHeader)
    • 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()
      • 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)
      • 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:
        getColumnName in interface javax.swing.table.TableModel
        Overrides:
        getColumnName in class javax.swing.table.AbstractTableModel
      • getColumnClass

        public java.lang.Class getColumnClass​(int column)
        Specified by:
        getColumnClass in interface javax.swing.table.TableModel
        Overrides:
        getColumnClass in class javax.swing.table.AbstractTableModel
      • isCellEditable

        public boolean isCellEditable​(int row,
                                      int column)
        Specified by:
        isCellEditable in interface javax.swing.table.TableModel
        Overrides:
        isCellEditable in class javax.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 interface javax.swing.table.TableModel
        Overrides:
        setValueAt in class javax.swing.table.AbstractTableModel