Package org.zkoss.zul

Class TreeitemComparator

  • All Implemented Interfaces:
    java.io.Serializable, java.util.Comparator

    public class TreeitemComparator
    extends java.lang.Object
    implements java.util.Comparator, java.io.Serializable
    A comparator used to compare Treeitem, if not live data, or the data themselves, if live data.
    Since:
    5.0.6
    Author:
    jimmy
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      TreeitemComparator()
      Compares with Treeitem.getValue().
      TreeitemComparator​(int index)
      Compares with the column of the specified index.
      TreeitemComparator​(int index, boolean ascending, boolean ignoreCase)
      Compares with the column of the specified index.
      TreeitemComparator​(int index, boolean ascending, boolean ignoreCase, boolean byValue)
      Compares with the column of the specified index.
      TreeitemComparator​(int index, boolean ascending, boolean ignoreCase, boolean byValue, boolean nullAsMax)
      Compares with the column of the specified index.
      TreeitemComparator​(Treecol treecol, boolean ascending, boolean ignoreCase)
      Compares with the column which the tree header is at.
      TreeitemComparator​(Treecol treecol, boolean ascending, boolean ignoreCase, boolean byValue)
      Compares with the column which the tree header is at.
      TreeitemComparator​(Treecol treecol, boolean ascending, boolean ignoreCase, boolean byValue, boolean nullAsMax)
      Compares with the column which the tree header is at.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean byValue()
      Returns whether to compare the returned value of Treeitem.getValue()
      int compare​(java.lang.Object o1, java.lang.Object o2)  
      boolean equals​(java.lang.Object o)  
      Treecol getTreecol()
      Returns the Treecol that this comparator is associated with, or null if not available.
      int hashCode()  
      boolean isAscending()
      Returns whether the order is ascending.
      boolean shallIgnoreCase()
      Returns whether to ignore case.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Comparator

        reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
    • Constructor Detail

      • TreeitemComparator

        public TreeitemComparator​(int index)
        Compares with the column of the specified index.

        0 for the first column, 1 for the second and so on

        Note: -1 for Treeitem.getValue() and it assumes the value implements Comparable.

        Note: It assumes the ascending order, case-insensitive and comparing the returned values of LabelElement.getLabel(). If not, use TreeitemComparator(int, boolean, boolean, boolean) instead.

        A null value is considered as the minimum value.

        Parameters:
        index - which column to compare. If -1, Treeitem.getValue() is used.
      • TreeitemComparator

        public TreeitemComparator​(int index,
                                  boolean ascending,
                                  boolean ignoreCase)
        Compares with the column of the specified index.

        0 for the first column, 1 for the second and so on

        Note: -1 for Treeitem.getValue() and it assumes the value implements Comparable.

        Note: it compares the returned value of LabelElement.getLabel(). If you want to compare Treeitem.getValue()., use TreeitemComparator(int, boolean, boolean, boolean) instead.

        A null value is considered as the minimum value.

        Parameters:
        index - which column to compare. If -1, Treeitem.getValue() is used.
        ascending - whether to sort as ascending (or descending).
        ignoreCase - whether to sort case-insensitive
      • TreeitemComparator

        public TreeitemComparator​(int index,
                                  boolean ascending,
                                  boolean ignoreCase,
                                  boolean byValue)
        Compares with the column of the specified index.

        0 for the first column, 1 for the second and so on

        Note: -1 for Treeitem.getValue() and it assumes the value implements Comparable.

        A null value is considered as the minimum value.

        Parameters:
        index - which column to compare. If -1, Treeitem.getValue() is used.
        ascending - whether to sort as ascending (or descending).
        ignoreCase - whether to sort case-insensitive
        byValue - whether to compare Treeitem.getValue(). If false, it compares LabelElement.getLabel(). If true, it assumes the value returned by Treeitem.getValue() implements Comparable. It is ignored if the index is -1.
      • TreeitemComparator

        public TreeitemComparator​(int index,
                                  boolean ascending,
                                  boolean ignoreCase,
                                  boolean byValue,
                                  boolean nullAsMax)
        Compares with the column of the specified index.

        0 for the first column, 1 for the second and so on

        Note: -1 for Treeitem.getValue() and it assumes the value implements Comparable.

        Parameters:
        index - which column to compare. If -1, Treeitem.getValue() is used.
        ascending - whether to sort as ascending (or descending).
        ignoreCase - whether to sort case-insensitive
        byValue - whether to compare Treeitem.getValue(). If false, it compares LabelElement.getLabel(). If true, it assumes the value returned by Treeitem.getValue() implements Comparable. It is ignored if the index is -1.
        nullAsMax - whether to consider null as the maximum value. If false, null is considered as the minimum value.
      • TreeitemComparator

        public TreeitemComparator​(Treecol treecol,
                                  boolean ascending,
                                  boolean ignoreCase,
                                  boolean byValue)
        Compares with the column which the tree header is at.

        A null value is considered as the minimum value.

        Parameters:
        ascending - whether to sort as ascending (or descending).
        ignoreCase - whether to sort case-insensitive
        byValue - whether to compare Treeitem.getValue(). If false, it compares LabelElement.getLabel().
      • TreeitemComparator

        public TreeitemComparator​(Treecol treecol,
                                  boolean ascending,
                                  boolean ignoreCase,
                                  boolean byValue,
                                  boolean nullAsMax)
        Compares with the column which the tree header is at.
        Parameters:
        ascending - whether to sort as ascending (or descending).
        ignoreCase - whether to sort case-insensitive
        byValue - whether to compare Treeitem.getValue(). If false, it compares LabelElement.getLabel().
        nullAsMax - whether to consider null as the maximum value. If false, null is considered as the minimum value.
    • Method Detail

      • getTreecol

        public Treecol getTreecol()
        Returns the Treecol that this comparator is associated with, or null if not available.
      • isAscending

        public boolean isAscending()
        Returns whether the order is ascending.
      • shallIgnoreCase

        public boolean shallIgnoreCase()
        Returns whether to ignore case.
      • byValue

        public boolean byValue()
        Returns whether to compare the returned value of Treeitem.getValue()
      • compare

        public int compare​(java.lang.Object o1,
                           java.lang.Object o2)
        Specified by:
        compare in interface java.util.Comparator
      • equals

        public boolean equals​(java.lang.Object o)
        Specified by:
        equals in interface java.util.Comparator
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object