From ff456c278fa5d9dc31781b748e828d48c3f16b52 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Fri, 29 Dec 2017 14:21:47 +0100 Subject: [PATCH] Simplify column viewer comparator in order to make it more portable --- .../cms/ui/workbench/osgi/BundlesView.java | 32 ++++--------------- .../ui/workbench/osgi/CmsSessionsView.java | 31 +++--------------- .../eclipse/ui/ColumnViewerComparator.java | 8 ++--- 3 files changed, 14 insertions(+), 57 deletions(-) diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/BundlesView.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/BundlesView.java index 40a1372f7..4032e785c 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/BundlesView.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/BundlesView.java @@ -18,8 +18,6 @@ */ package org.argeo.cms.ui.workbench.osgi; -import java.util.Comparator; - import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; import org.argeo.eclipse.ui.ColumnViewerComparator; import org.argeo.eclipse.ui.specific.EclipseUiSpecificUtils; @@ -61,22 +59,14 @@ public class BundlesView extends ViewPart { return Long.toString(((Bundle) element).getBundleId()); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(Bundle o1, Bundle o2) { - return (int) (o1.getBundleId() - o2.getBundleId()); - } - }); + new ColumnViewerComparator(column); // State column = new TableViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(18); column.getColumn().setText("State"); column.setLabelProvider(new StateLabelProvider()); - new ColumnViewerComparator(column, new Comparator() { - public int compare(Bundle o1, Bundle o2) { - return o1.getState() - o2.getState(); - } - }); + new ColumnViewerComparator(column); // Symbolic name column = new TableViewerColumn(viewer, SWT.NONE); @@ -89,11 +79,7 @@ public class BundlesView extends ViewPart { return ((Bundle) element).getSymbolicName(); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(Bundle o1, Bundle o2) { - return o1.getSymbolicName().compareTo(o2.getSymbolicName()); - } - }); + new ColumnViewerComparator(column); // Version column = new TableViewerColumn(viewer, SWT.NONE); @@ -107,14 +93,9 @@ public class BundlesView extends ViewPart { return bundle.getVersion().toString(); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(Bundle o1, Bundle o2) { - return o1.getVersion().compareTo(o2.getVersion()); - } - }); + new ColumnViewerComparator(column); - viewer.setInput(WorkbenchUiPlugin.getDefault().getBundle() - .getBundleContext()); + viewer.setInput(WorkbenchUiPlugin.getDefault().getBundle().getBundleContext()); } @@ -125,8 +106,7 @@ public class BundlesView extends ViewPart { } /** Content provider managing the array of bundles */ - private static class BundleContentProvider implements - IStructuredContentProvider { + private static class BundleContentProvider implements IStructuredContentProvider { private static final long serialVersionUID = -8533792785725875977L; public Object[] getElements(Object inputElement) { diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/CmsSessionsView.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/CmsSessionsView.java index 8f34a0b2b..44b554ed1 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/CmsSessionsView.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/osgi/CmsSessionsView.java @@ -20,7 +20,6 @@ package org.argeo.cms.ui.workbench.osgi; import java.util.ArrayList; import java.util.Collection; -import java.util.Comparator; import java.util.List; import javax.naming.ldap.LdapName; @@ -75,11 +74,7 @@ public class CmsSessionsView extends ViewPart { return ((CmsSession) element).getUserDn().toString(); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(CmsSession o1, CmsSession o2) { - return o1.getAuthorization().toString().compareTo(o2.getAuthorization().toString()); - } - }); + new ColumnViewerComparator(column); // Creation time column = new TableViewerColumn(viewer, SWT.NONE); @@ -96,11 +91,7 @@ public class CmsSessionsView extends ViewPart { return ((CmsSession) element).getCreationTime().toString(); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(CmsSession o1, CmsSession o2) { - return o1.getCreationTime().compareTo(o2.getCreationTime()); - } - }); + new ColumnViewerComparator(column); // Username column = new TableViewerColumn(viewer, SWT.NONE); @@ -118,11 +109,7 @@ public class CmsSessionsView extends ViewPart { return ((CmsSession) element).getUserDn().toString(); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(CmsSession o1, CmsSession o2) { - return o1.getUserDn().compareTo(o2.getUserDn()); - } - }); + new ColumnViewerComparator(column); // UUID column = new TableViewerColumn(viewer, SWT.NONE); @@ -139,11 +126,7 @@ public class CmsSessionsView extends ViewPart { return getText(element); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(CmsSession o1, CmsSession o2) { - return o1.getUuid().compareTo(o2.getUuid()); - } - }); + new ColumnViewerComparator(column); // Local ID column = new TableViewerColumn(viewer, SWT.NONE); @@ -160,11 +143,7 @@ public class CmsSessionsView extends ViewPart { return getText(element); } }); - new ColumnViewerComparator(column, new Comparator() { - public int compare(CmsSession o1, CmsSession o2) { - return o1.getLocalId().compareTo(o2.getLocalId()); - } - }); + new ColumnViewerComparator(column); viewer.setInput(WorkbenchUiPlugin.getDefault().getBundle().getBundleContext()); diff --git a/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/ColumnViewerComparator.java b/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/ColumnViewerComparator.java index a0a8c2d1a..f13378aaf 100644 --- a/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/ColumnViewerComparator.java +++ b/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/ColumnViewerComparator.java @@ -15,8 +15,6 @@ */ package org.argeo.eclipse.ui; -import java.util.Comparator; - import org.eclipse.jface.viewers.ColumnViewer; import org.eclipse.jface.viewers.TableViewerColumn; import org.eclipse.jface.viewers.Viewer; @@ -26,7 +24,7 @@ import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; /** Generic column viewer sorter */ -public class ColumnViewerComparator extends ViewerComparator { +public class ColumnViewerComparator extends ViewerComparator { private static final long serialVersionUID = -2266218906355859909L; public static final int ASC = 1; @@ -41,8 +39,8 @@ public class ColumnViewerComparator extends ViewerComparator { private ColumnViewer viewer; - public ColumnViewerComparator(TableViewerColumn column, Comparator comparator) { - super((Comparator) comparator); + public ColumnViewerComparator(TableViewerColumn column) { + super(null); this.column = column; this.viewer = column.getViewer(); this.column.getColumn().addSelectionListener(new SelectionAdapter() { -- 2.30.2