java.lang.Object
org.eclipse.nebula.widgets.nattable.extension.glazedlists.hierarchical.HierarchicalWrapperSortModel
All Implemented Interfaces:
ISortModel

public class HierarchicalWrapperSortModel extends Object implements ISortModel
ISortModel that is used to support sorting of HierarchicalWrapper in a SortedList. Internally uses the HierarchicalWrapperComparator to keep the tree structure while supporting dynamic column based sorting.
Since:
1.6
  • Constructor Details

  • Method Details

    • getSortedColumnIndexes

      public List<Integer> getSortedColumnIndexes()
      Specified by:
      getSortedColumnIndexes in interface ISortModel
      Returns:
      List of column indexes that are sorted.
    • isColumnIndexSorted

      public boolean isColumnIndexSorted(int columnIndex)
      Specified by:
      isColumnIndexSorted in interface ISortModel
      Parameters:
      columnIndex - The column index to check.
      Returns:
      true if the column with the given index is sorted at the moment.
    • getSortDirection

      public SortDirectionEnum getSortDirection(int columnIndex)
      Specified by:
      getSortDirection in interface ISortModel
      Parameters:
      columnIndex - The column index for which the sort direction is requested.
      Returns:
      the direction in which the column with the given index is currently sorted
    • getSortOrder

      public int getSortOrder(int columnIndex)
      Specified by:
      getSortOrder in interface ISortModel
      Parameters:
      columnIndex - The column index for which the sort order is requested.
      Returns:
      when multiple columns are sorted, this returns the order of the column index in the sort

      Example: If column indexes 3, 6, 9 are sorted (in that order) the sort order for index 6 is 1.

    • getComparatorsForColumnIndex

      public List<Comparator> getComparatorsForColumnIndex(int columnIndex)
      Specified by:
      getComparatorsForColumnIndex in interface ISortModel
      Parameters:
      columnIndex - The index of the column for which the row objects should be sorted.
      Returns:
      The collection of Comparators used to sort row objects by column values.
    • getColumnComparator

      public Comparator<?> getColumnComparator(int columnIndex)
      Specified by:
      getColumnComparator in interface ISortModel
      Parameters:
      columnIndex - The index of the column for which the Comparator is requested.
      Returns:
      The Comparator that is used for sorting the values of a specified column. Needed in case of data model wrapping, e.g. GroupBy
    • sort

      public void sort(int columnIndex, SortDirectionEnum sortDirection, boolean accumulate)
      Description copied from interface: ISortModel
      This method is called by the SortCommandHandler in response to a sort command. It is responsible for sorting the requested column.
      Specified by:
      sort in interface ISortModel
      Parameters:
      columnIndex - The column index to sort.
      sortDirection - The sort direction to apply.
      accumulate - flag indicating if the column should added to a previous sort.
    • clear

      public void clear()
      Description copied from interface: ISortModel
      Remove all sorting
      Specified by:
      clear in interface ISortModel