Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx.sort
Class TableSortController<M extends javax.swing.table.TableModel>

    java.lang.Object
      javax.swing.RowSorter<M>
          javax.swing.DefaultRowSorter<M,java.lang.Integer>
              org.jdesktop.swingx.sort.DefaultSortController<M>
                  org.jdesktop.swingx.sort.TableSortController<M>

All Implemented Interfaces:
  SortController<M>

    public class TableSortController<M extends javax.swing.table.TableModel>

extends DefaultSortController<M>

A SortController to use for a JXTable.

PENDING JW: should move up to DefaultRowSorter for re-use in ListRowSorter, but as long as we don't have the latter ...

Author:
  Jeanette Winzenburg

Nested Class Summary

Nested classes/interfaces inherited from class javax.swing.DefaultRowSorter
`javax.swing.DefaultRowSorter.ModelWrapper<M,I>`

Nested classes/interfaces inherited from class javax.swing.RowSorter
`javax.swing.RowSorter.SortKey`

Field Summary

Fields inherited from class org.jdesktop.swingx.sort.DefaultSortController
`cachedModelRowCount, COMPARABLE_COMPARATOR`

Constructor Summary
`TableSortController()`
`TableSortController(M model)`

Method Summary
`java.util.Comparator<?>` | `getComparator(int column)` Returns the `Comparator` for the specified column.
`void` | `setModel(M model)` Sets the `TableModel` to use as the underlying model for this `TableRowSorter`.
`protected boolean` | `useToString(int column)`

Methods inherited from class org.jdesktop.swingx.sort.DefaultSortController
`allRowsChanged, convertRowIndexToModel, convertRowIndexToView, getDefaultSortOrderCycle, getModelRowCount, getSortOrder, getSortOrderCycle, getStringValueProvider, getViewRowCount, isSortable, isSortable, modelStructureChanged, resetSortOrders, rowsDeleted, rowsInserted, setSortable, setSortable, setSortOrder, setSortOrderCycle, setStringValueProvider, toggleSortOrder`

Methods inherited from class javax.swing.DefaultRowSorter
`getMaxSortKeys, getModel, getModelWrapper, getRowFilter, getSortKeys, getSortsOnUpdates, rowsUpdated, rowsUpdated, setComparator, setMaxSortKeys, setModelWrapper, setRowFilter, setSortKeys, setSortsOnUpdates, sort`

Methods inherited from class javax.swing.RowSorter
`addRowSorterListener, fireRowSorterChanged, fireSortOrderChanged, removeRowSorterListener`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.jdesktop.swingx.sort.SortController
`getRowFilter, getSortsOnUpdates, setComparator, setRowFilter, setSortsOnUpdates`

Constructor Detail

### TableSortController

    public TableSortController()

### TableSortController

    public TableSortController(M model)

Parameters:
  `model` -

Method Detail

### setModel

    public void setModel(M model)

  Sets the `TableModel` to use as the underlying model for this `TableRowSorter`. A value of `null` can be used to set an empty model.

  Parameters:
    `model` - the underlying model to use, or `null`

### getComparator

    public java.util.Comparator<?> getComparator(int column)

  Returns the `Comparator` for the specified column. If a `Comparator` has not been specified using the `setComparator` method a `Comparator` will be returned based on the column class (`TableModel.getColumnClass`) of the specified column. If the column class is `String`, `Collator.getInstance` is returned. If the column class implements `Comparable` a private `Comparator` is returned that invokes the `compareTo` method. Otherwise `Collator.getInstance` is returned.

  PENDING JW: think about implications to string value lookup!

  Specified by:
    `getComparator` in interface `SortController<M extends javax.swing.table.TableModel>`
  Overrides:
    `getComparator` in class `javax.swing.DefaultRowSorter<M extends javax.swing.table.TableModel,java.lang.Integer>`
  Parameters:
    `column` - the column to fetch the `Comparator` for, in terms of the underlying model
  Returns:
    the `Comparator` for the specified column
  Throws:
    `java.lang.IndexOutOfBoundsException` - if column is outside the range of the underlying model

### useToString

    protected boolean useToString(int column)

  Note: must implement same logic as the overridden comparator lookup, otherwise will throw ClassCastException because here the comparator is never null.

  PENDING JW: think about implications to string value lookup!

  Overrides:
    `useToString` in class `javax.swing.DefaultRowSorter<M extends javax.swing.table.TableModel,java.lang.Integer>`
  Throws:
    `java.lang.IndexOutOfBoundsException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.