use the order reversed property in GroupComparators to correct the used comparator.

This commit is contained in:
millmanorama 2018-09-19 14:21:28 +02:00
parent 58310ad217
commit 4e78c40afa
2 changed files with 8 additions and 2 deletions

View File

@ -56,6 +56,10 @@ final class GroupComparators<T extends Comparable<T>> implements Comparator<Draw
private final Function<DrawableGroup, T> extractor; private final Function<DrawableGroup, T> extractor;
private final Function<T, String> valueFormatter; private final Function<T, String> valueFormatter;
private final boolean orderReveresed; private final boolean orderReveresed;
boolean isOrderReveresed() {
return orderReveresed;
}
private final String displayName; private final String displayName;
private GroupComparators(String displayName, Function<DrawableGroup, T> extractor, Function<T, String> formatter, boolean defaultOrderReversed) { private GroupComparators(String displayName, Function<DrawableGroup, T> extractor, Function<T, String> formatter, boolean defaultOrderReversed) {

View File

@ -123,10 +123,12 @@ abstract class NavPanel<X> extends Tab {
*/ */
@ThreadConfined(type = ThreadConfined.ThreadType.JFX) @ThreadConfined(type = ThreadConfined.ThreadType.JFX)
Comparator<DrawableGroup> getComparator() { Comparator<DrawableGroup> getComparator() {
Comparator<DrawableGroup> comparator = sortChooser.getComparator(); GroupComparators<?> comparator = sortChooser.getComparator();
return (sortChooser.getSortOrder() == SortOrder.ASCENDING) Comparator<DrawableGroup> comparator2 = (sortChooser.getSortOrder() == SortOrder.ASCENDING)
? comparator ? comparator
: comparator.reversed(); : comparator.reversed();
return comparator.isOrderReveresed() ? comparator2.reversed() : comparator2;
} }
/** /**