Module java.desktop
Package javax.swing.event

## Class RowSorterEvent

- java.lang.Object
- - java.util.EventObject
  - - javax.swing.event.RowSorterEvent

- All Implemented Interfaces:
    `Serializable`

      public class RowSorterEvent
      extends EventObject

  `RowSorterEvent` provides notification of changes to a `RowSorter`. Two types of notification are possible:
  - `Type.SORT_ORDER_CHANGED`: indicates the sort order has changed. This is typically followed by a notification of:
  - `Type.SORTED`: indicates the contents of the model have been transformed in some way. For example, the contents may have been sorted or filtered.
  Since:
    1.6
  See Also:
    `RowSorter`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `RowSorterEvent.Type` | Enumeration of the types of `RowSorterEvent`s.

  - ### Field Summary

    - ### Fields declared in class java.util.EventObject

      `source`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RowSorterEvent​(RowSorter<?> source)` | Creates a `RowSorterEvent` of type `SORT_ORDER_CHANGED`.
    `RowSorterEvent​(RowSorter<?> source, RowSorterEvent.Type type, int[] previousRowIndexToModel)` | Creates a `RowSorterEvent`.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `convertPreviousRowIndexToModel​(int index)` | Returns the location of `index` in terms of the model prior to the sort.
    `int` | `getPreviousRowCount()` | Returns the number of rows before the sort.
    `RowSorter<?>` | `getSource()` | Returns the source of the event as a `RowSorter`.
    `RowSorterEvent.Type` | `getType()` | Returns the type of event.

    - ### Methods declared in class java.util.EventObject

      `toString`

    - ### Methods declared in class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### RowSorterEvent

          public RowSorterEvent​(RowSorter<?> source)

      Creates a `RowSorterEvent` of type `SORT_ORDER_CHANGED`.
      Parameters:
        `source` - the source of the change
      Throws:
        `IllegalArgumentException` - if `source` is `null`

    - #### RowSorterEvent

          public RowSorterEvent​(RowSorter<?> source,
                                RowSorterEvent.Type type,
                                int[] previousRowIndexToModel)

      Creates a `RowSorterEvent`.
      Parameters:
        `source` - the source of the change
        `type` - the type of event
        `previousRowIndexToModel` - the mapping from model indices to view indices prior to the sort, may be `null`
      Throws:
        `IllegalArgumentException` - if source or `type` is `null`

  - ### Method Detail

    - #### getSource

          public RowSorter<?> getSource()

      Returns the source of the event as a `RowSorter`.
      Overrides:
        `getSource` in class `EventObject`
      Returns:
        the source of the event as a `RowSorter`

    - #### getType

          public RowSorterEvent.Type getType()

      Returns the type of event.
      Returns:
        the type of event

    - #### convertPreviousRowIndexToModel

          public int convertPreviousRowIndexToModel​(int index)

      Returns the location of `index` in terms of the model prior to the sort. This method is only useful for events of type `SORTED`. This method will return -1 if the index is not valid, or the locations prior to the sort have not been provided.
      Parameters:
        `index` - the index in terms of the view
      Returns:
        the index in terms of the model prior to the sort, or -1 if the location is not valid or the mapping was not provided.

    - #### getPreviousRowCount

          public int getPreviousRowCount()

      Returns the number of rows before the sort. This method is only useful for events of type `SORTED` and if the last locations have not been provided will return 0.
      Returns:
        the number of rows in terms of the view prior to the sort