Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathalie Lepine2012-12-14 13:29:09 +0000
committerNathalie Lepine2012-12-14 13:29:09 +0000
commitaad86c0ec9a0f042c35242ebd69401f4fcdcf337 (patch)
treee4400aa678c06c4aebf618914464edc9c76aaa4e /plugins/org.eclipse.emf.eef.runtime
parenta15c2729f40fe19621243b6b430495c178a09590 (diff)
downloadorg.eclipse.eef-aad86c0ec9a0f042c35242ebd69401f4fcdcf337.tar.gz
org.eclipse.eef-aad86c0ec9a0f042c35242ebd69401f4fcdcf337.tar.xz
org.eclipse.eef-aad86c0ec9a0f042c35242ebd69401f4fcdcf337.zip
fix EOFCV : comparator can be set
Diffstat (limited to 'plugins/org.eclipse.emf.eef.runtime')
-rw-r--r--plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EMFModelViewerDialog.java18
-rw-r--r--plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java24
2 files changed, 39 insertions, 3 deletions
diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EMFModelViewerDialog.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EMFModelViewerDialog.java
index b2e2be0bc..d9dcd69b9 100644
--- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EMFModelViewerDialog.java
+++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EMFModelViewerDialog.java
@@ -35,6 +35,7 @@ import org.eclipse.jface.viewers.ITableLabelProvider;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerComparator;
import org.eclipse.jface.viewers.ViewerFilter;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.KeyAdapter;
@@ -83,6 +84,10 @@ public abstract class EMFModelViewerDialog extends Dialog {
protected Object input;
+ private ViewerComparator comparator;
+
+ private boolean customComparator;
+
/**
* Constructor.
*
@@ -109,6 +114,7 @@ public abstract class EMFModelViewerDialog extends Dialog {
this.nullable = nullable;
this.isMulti = isMulti;
setShellStyle(SWT.CLOSE | SWT.TITLE | SWT.BORDER | SWT.APPLICATION_MODAL | SWT.RESIZE);
+ customComparator = false;
}
/*
@@ -184,7 +190,10 @@ public abstract class EMFModelViewerDialog extends Dialog {
};
}
elements.setLabelProvider(labelProvider);
- elements.setComparator(new EMFModelViewerComparator(labelProvider));
+ if (!customComparator) {
+ comparator = new EMFModelViewerComparator(labelProvider);
+ }
+ elements.setComparator(comparator);
elements.addDoubleClickListener(new IDoubleClickListener() {
@@ -418,4 +427,11 @@ public abstract class EMFModelViewerDialog extends Dialog {
return StringTools.EMPTY_STRING;
return result;
}
+
+ public void setComparator(ViewerComparator comparator) {
+ this.comparator = comparator;
+ customComparator = true;
+ }
+
+
}
diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java
index 1ab51aabd..977d05f29 100644
--- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java
+++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java
@@ -24,6 +24,7 @@ import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.ViewerComparator;
import org.eclipse.jface.viewers.ViewerFilter;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
@@ -56,6 +57,10 @@ public class EObjectFlatComboViewer extends Composite implements ISelectionProvi
protected Object input;
private ButtonsModeEnum button_mode = ButtonsModeEnum.BROWSE;
+
+ private boolean isSetComparator;
+
+ private ViewerComparator comparator;
public EObjectFlatComboViewer(Composite parent, final boolean nullable) {
super(parent, SWT.NONE);
@@ -76,7 +81,15 @@ public class EObjectFlatComboViewer extends Composite implements ISelectionProvi
editer.addSelectionListener(getSelectionAdapter(nullable));
EditingUtils.setEEFtype(editer, "eef::EObjectFlatComboViewer::editbutton");
-
+
+ isSetComparator = false;
+ comparator = null;
+ }
+
+ public EObjectFlatComboViewer(Composite parent, final boolean nullable, ViewerComparator comparator) {
+ this(parent, nullable);
+ isSetComparator = true;
+ this.comparator = comparator;
}
/**
@@ -115,6 +128,9 @@ public class EObjectFlatComboViewer extends Composite implements ISelectionProvi
}
}
};
+ if (isSetComparator) {
+ dialog.setComparator(comparator);
+ }
dialog.open();
}
break;
@@ -227,5 +243,9 @@ public class EObjectFlatComboViewer extends Composite implements ISelectionProvi
editer.setEnabled(enabled);
}
-
+ public void setComparator(ViewerComparator comparator) {
+ this.comparator = comparator;
+ isSetComparator = true;
+ }
+
}

Back to the top