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.plaf.basic.core
Class ListSortUI

    java.lang.Object
      org.jdesktop.swingx.plaf.basic.core.ListSortUI

    public final class ListSortUI

extends java.lang.Object

ListSortUI provides support for managing the synchronization between RowSorter, SelectionModel and ListModel if a JXList is sortable.

This implementation is an adaption of JTable.SortManager fit to the needs of a ListUI. In contrast to JTable tradition, the ui delegate has full control about listening to model/selection changes and updating the list accordingly. So it's role is that of a helper to the ui-delgate (vs. as a helper of the JTable). It's still up to the ListUI itself to listen to model/selection and propagate the notification to this class, if a sorter is installed, but still do the usual updates (layout, repaint) itself. On the other hand, listening to the sorter and updating list state accordingly is completely done by this.

Constructor Summary
`ListSortUI(JXList list, javax.swing.RowSorter<? extends javax.swing.ListModel> sorter)` Intanstiates a SortUI on the list which has the given RowSorter.

Method Summary
`protected javax.swing.event.RowSorterListener` | `createRowSorterListener()` Creates and returns a RowSorterListener.
`void` | `dispose()` Disposes any resources used by this SortManager.
`void` | `modelChanged(javax.swing.event.ListDataEvent e)` Called after notification from ListModel.
`protected void` | `sortedChanged(javax.swing.event.RowSorterEvent e)` Called after notification from RowSorter.
`void` | `viewSelectionChanged(javax.swing.event.ListSelectionEvent e)` Called after notification from selectionModel.

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

Constructor Detail

### ListSortUI

    public ListSortUI(JXList list,
                      javax.swing.RowSorter<? extends javax.swing.ListModel> sorter)

  Intanstiates a SortUI on the list which has the given RowSorter.

  Parameters:
    `list` - the list to control, must not be null
    `sorter` - the rowSorter of the list, must not be null
  Throws:
    `java.lang.NullPointerException` - if either the list or the sorter is null
    `java.lang.IllegalStateException` - if the sorter is not the sorter installed on the list

Method Detail

### dispose

    public void dispose()

  Disposes any resources used by this SortManager. Note: this instance must not be used after dispose!

### modelChanged

    public void modelChanged(javax.swing.event.ListDataEvent e)

  Called after notification from ListModel.

  Parameters:
    `e` - the change event from the listModel.

### viewSelectionChanged

    public void viewSelectionChanged(javax.swing.event.ListSelectionEvent e)

  Called after notification from selectionModel. Invoked when the selection, on the view, has changed.

### sortedChanged

    protected void sortedChanged(javax.swing.event.RowSorterEvent e)

  Called after notification from RowSorter.

  Parameters:
    `e` - RowSorter event of type SORTED.

### createRowSorterListener

    protected javax.swing.event.RowSorterListener createRowSorterListener()

  Creates and returns a RowSorterListener. This implementation calls sortedChanged if the event is of type SORTED.

  Returns:
    rowSorterListener to install on sorter.

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.