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<T, String> valueFormatter;
private final boolean orderReveresed;
boolean isOrderReveresed() {
return orderReveresed;
}
private final String displayName;
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)
Comparator<DrawableGroup> getComparator() {
Comparator<DrawableGroup> comparator = sortChooser.getComparator();
return (sortChooser.getSortOrder() == SortOrder.ASCENDING)
GroupComparators<?> comparator = sortChooser.getComparator();
Comparator<DrawableGroup> comparator2 = (sortChooser.getSortOrder() == SortOrder.ASCENDING)
? comparator
: comparator.reversed();
return comparator.isOrderReveresed() ? comparator2.reversed() : comparator2;
}
/**