Package org.eclipse.jface.viewers
Class TreePathViewerSorter
java.lang.Object
org.eclipse.jface.viewers.ViewerComparator
org.eclipse.jface.viewers.ViewerSorter
org.eclipse.jface.viewers.TreePathViewerSorter
- Direct Known Subclasses:
CommonViewerSorter
A viewer sorter that is provided extra context in the form of the path of the
parent element of the elements being sorted.
- Since:
- 3.2
-
Field Summary
Fields inherited from class org.eclipse.jface.viewers.ViewerSorter
collator
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Provide a category for the given element that will have the given parent path when it is added to the viewer.int
Compare the given elements that will have the given parent path when they are added to the viewer.boolean
isSorterProperty
(TreePath parentPath, Object element, String property) Returns whether this viewer sorter would be affected by a change to the given property of the given element.void
Sorts the given elements in-place, modifying the given array.Methods inherited from class org.eclipse.jface.viewers.ViewerSorter
getCollator
Methods inherited from class org.eclipse.jface.viewers.ViewerComparator
category, compare, getComparator, isSorterProperty, sort
-
Constructor Details
-
TreePathViewerSorter
public TreePathViewerSorter()
-
-
Method Details
-
category
Provide a category for the given element that will have the given parent path when it is added to the viewer. The provided path is relative to the viewer input. The parent path will benull
when the elements are root elements.By default, the this method calls
ViewerSorter#category(Object)
. Subclasses may override.- Parameters:
parentPath
- the parent path for the elementelement
- the element- Returns:
- the category of the element
-
compare
Compare the given elements that will have the given parent path when they are added to the viewer. The provided path is relative to the viewer input. The parent path will benull
when the elements are root elements.By default, the this method calls
ViewerSorter#sort(Viewer, Object[])
. Subclasses may override.- Parameters:
viewer
- the viewerparentPath
- the parent path for the two elementse1
- the first elemente2
- the second element- Returns:
- a negative number if the first element is less than the
second element; the value
0
if the first element is equal to the second element; and a positive
-
isSorterProperty
Returns whether this viewer sorter would be affected by a change to the given property of the given element. The provided path is relative to the viewer input. The parent path will benull
when the elements are root elements.The default implementation of this method calls
ViewerSorter#isSorterProperty(Object, String)
. Subclasses may reimplement.- Parameters:
parentPath
- the parent path of the elementelement
- the elementproperty
- the property- Returns:
true
if the sorting would be affected, andfalse
if it would be unaffected
-
sort
Sorts the given elements in-place, modifying the given array. The provided path is relative to the viewer input. The parent path will benull
when the elements are root elements.The default implementation of this method uses the java.util.Arrays#sort algorithm on the given array, calling
compare(Viewer, TreePath, Object, Object)
to compare elements.Subclasses may reimplement this method to provide a more optimized implementation.
- Parameters:
viewer
- the viewerparentPath
- the parent path of the given elementselements
- the elements to sort
-