diff options
author | Karsten Thoms | 2018-03-02 13:38:07 +0000 |
---|---|---|
committer | Sarika Sinha | 2018-03-05 08:24:31 +0000 |
commit | 713a22b1418066e46e922a0b6af249f5fac640d1 (patch) | |
tree | 29ac3cf33cecce1c03b7b6613a634c6ee19c5668 | |
parent | 27c0b5e57387d0df160a523e6315bdde431f2857 (diff) | |
download | eclipse.jdt.ui-713a22b1418066e46e922a0b6af249f5fac640d1.tar.gz eclipse.jdt.ui-713a22b1418066e46e922a0b6af249f5fac640d1.tar.xz eclipse.jdt.ui-713a22b1418066e46e922a0b6af249f5fac640d1.zip |
Bug 223318 - Allow sorting in "Referenced libraries" nodeS4_8_0_M6I20180314-2000I20180313-2000I20180312-2000I20180311-2000I20180310-1500I20180309-2000I20180308-0630I20180307-2000I20180307-1025I20180307-0900I20180307-0825I20180307-0800I20180306-2000I20180306-0800I20180305-2000I20180305-0800
Also enable when working sets are top level
Change-Id: Iab36271fac3e320e091f8ce150f3f758f01958f2
Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de>
2 files changed, 22 insertions, 3 deletions
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java index 05c4d506cb..fe000bb139 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java @@ -1498,10 +1498,10 @@ public class PackageExplorerPart extends ViewPart } private void setComparator() { + boolean sortLibraryEntriesByName = JavaPlugin.getDefault().getPreferenceStore().getBoolean(PreferenceConstants.APPEARANCE_SORT_LIBRARY_ENTRIES_BY_NAME); if (getRootMode() == WORKING_SETS_AS_ROOTS) { - fViewer.setComparator(new WorkingSetAwareJavaElementSorter()); + fViewer.setComparator(new WorkingSetAwareJavaElementSorter(sortLibraryEntriesByName)); } else { - boolean sortLibraryEntriesByName = JavaPlugin.getDefault().getPreferenceStore().getBoolean(PreferenceConstants.APPEARANCE_SORT_LIBRARY_ENTRIES_BY_NAME); fViewer.setComparator(new JavaElementComparator(sortLibraryEntriesByName)); } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/WorkingSetAwareJavaElementSorter.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/WorkingSetAwareJavaElementSorter.java index bb3d54d44b..bf23b4731e 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/WorkingSetAwareJavaElementSorter.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/WorkingSetAwareJavaElementSorter.java @@ -14,10 +14,29 @@ import org.eclipse.jface.viewers.Viewer; import org.eclipse.ui.IWorkingSet; +import org.eclipse.jdt.core.IPackageFragmentRoot; + import org.eclipse.jdt.ui.JavaElementComparator; public class WorkingSetAwareJavaElementSorter extends JavaElementComparator { - + /** + * Constructor. + * @since 3.14 + */ + public WorkingSetAwareJavaElementSorter () { + } + + /** + * Constructor. + * + * @param sortPFRByName When <code>true</code> {@link IPackageFragmentRoot}s are sorted by name and not by their classpath order + * + * @since 3.14 + */ + public WorkingSetAwareJavaElementSorter(boolean sortPFRByName) { + super(sortPFRByName); + } + @Override public int compare(Viewer viewer, Object e1, Object e2) { if (e1 instanceof IWorkingSet || e2 instanceof IWorkingSet) |