Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcletavernie2012-11-23 10:52:23 +0000
committercletavernie2012-11-23 10:52:23 +0000
commit6424abf6e7e922c90a56eec84fd3f9b2de9dfae5 (patch)
tree8d3239a03710422cba8493b4dbe9ee2bb9aeda71 /plugins/uml/tools
parentc7ed19562dfcf443385c0213765c98ffc841409f (diff)
downloadorg.eclipse.papyrus-6424abf6e7e922c90a56eec84fd3f9b2de9dfae5.tar.gz
org.eclipse.papyrus-6424abf6e7e922c90a56eec84fd3f9b2de9dfae5.tar.xz
org.eclipse.papyrus-6424abf6e7e922c90a56eec84fd3f9b2de9dfae5.zip
391945: [Refactoring] Part 2: Refactoring on Kepler (0.10)
https://bugs.eclipse.org/bugs/show_bug.cgi?id=391945
Diffstat (limited to 'plugins/uml/tools')
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF1
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/icons/none_comp_vis.gifbin115 -> 0 bytes
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/databinding/ProfileApplicationObservableList.java4
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLContentProvider.java55
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLFilteredLabelProvider.java2
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java19
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/util/UMLProviderHelper.java9
7 files changed, 65 insertions, 25 deletions
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF
index a1b22b35e25..3bc28801dfa 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF
@@ -18,7 +18,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.services.validation;bundle-version="0.10.0",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="0.10.0",
- org.eclipse.gmf.runtime.diagram.ui;bundle-version="1.6.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="0.10.0"
Export-Package: org.eclipse.papyrus.uml.tools,
org.eclipse.papyrus.uml.tools.commands,
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/icons/none_comp_vis.gif b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/icons/none_comp_vis.gif
deleted file mode 100644
index a2017d01c82..00000000000
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/icons/none_comp_vis.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/databinding/ProfileApplicationObservableList.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/databinding/ProfileApplicationObservableList.java
index ebebb793dfc..6f24f4c45bf 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/databinding/ProfileApplicationObservableList.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/databinding/ProfileApplicationObservableList.java
@@ -57,7 +57,7 @@ public class ProfileApplicationObservableList extends WritableList implements IC
* The editing domain on which the commands are executed
*/
public ProfileApplicationObservableList(Package umlSource, EditingDomain domain) {
- super(new LinkedList<Object>(umlSource.getAllAppliedProfiles()), Profile.class);
+ super(new LinkedList<Object>(umlSource.getAppliedProfiles()), Profile.class);
this.umlSource = umlSource;
this.domain = domain;
commands = new LinkedList<Command>();
@@ -188,7 +188,7 @@ public class ProfileApplicationObservableList extends WritableList implements IC
private void refreshCacheList() {
wrappedList.clear();
- wrappedList.addAll(umlSource.getAllAppliedProfiles());
+ wrappedList.addAll(umlSource.getAppliedProfiles());
fireListChange(null);
}
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLContentProvider.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLContentProvider.java
index 49c5b757abf..c50adafd18f 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLContentProvider.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLContentProvider.java
@@ -17,15 +17,20 @@ import java.util.Collections;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.Viewer;
import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
import org.eclipse.papyrus.infra.core.utils.ServiceUtilsForActionHandlers;
import org.eclipse.papyrus.infra.emf.providers.EMFEnumeratorContentProvider;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForResource;
import org.eclipse.papyrus.infra.widgets.providers.EmptyContentProvider;
import org.eclipse.papyrus.infra.widgets.providers.EncapsulatedContentProvider;
import org.eclipse.papyrus.infra.widgets.providers.IHierarchicContentProvider;
+import org.eclipse.papyrus.uml.tools.Activator;
import org.eclipse.papyrus.uml.tools.util.UMLProviderHelper;
import org.eclipse.papyrus.uml.tools.utils.ProfileUtil;
import org.eclipse.uml2.uml.InstanceValue;
@@ -47,6 +52,44 @@ public class UMLContentProvider extends EncapsulatedContentProvider {
protected ResourceSet root;
+ public UMLContentProvider() {
+ //Empty (@see #setInput())
+ }
+
+ @Override
+ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+ IStructuredContentProvider semanticProvider = null;
+
+ if(newInput instanceof EObject) {
+ EObject eObject = (EObject)newInput;
+ semanticProvider = getSemanticProvider(eObject);
+ }
+
+ if(newInput instanceof Resource) {
+ semanticProvider = getSemanticProvider((Resource)newInput);
+ }
+
+ if(newInput instanceof ResourceSet) {
+ root = (ResourceSet)newInput;
+ semanticProvider = getSemanticProvider(root);
+ }
+
+ if(newInput instanceof ServicesRegistry) {
+ try {
+ root = ServiceUtils.getInstance().getModelSet((ServicesRegistry)newInput);
+ semanticProvider = getSemanticProvider(root);
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ }
+ }
+
+ if(semanticProvider != null) {
+ encapsulated = UMLProviderHelper.encapsulateProvider(semanticProvider, null, feature, root);
+ }
+
+ super.inputChanged(viewer, oldInput, newInput);
+ }
+
/**
* Constructor.
*
@@ -99,6 +142,18 @@ public class UMLContentProvider extends EncapsulatedContentProvider {
encapsulated = UMLProviderHelper.encapsulateProvider(semanticProvider, eObject, feature, root);
}
+ protected IStructuredContentProvider getSemanticProvider(ResourceSet root) {
+ return new SemanticUMLContentProvider(root);
+ }
+
+ protected IStructuredContentProvider getSemanticProvider(Resource root) {
+ return new SemanticUMLContentProvider(root.getContents().toArray(new EObject[0]));
+ }
+
+ protected IStructuredContentProvider getSemanticProvider(EObject root) {
+ return new SemanticUMLContentProvider(new EObject[]{ root });
+ }
+
/**
*
* @param source
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLFilteredLabelProvider.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLFilteredLabelProvider.java
index da13e453ce1..ad96345f04d 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLFilteredLabelProvider.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLFilteredLabelProvider.java
@@ -16,7 +16,7 @@ import java.util.Iterator;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
-import org.eclipse.papyrus.infra.widgets.providers.IFilteredLabelProvider;
+import org.eclipse.papyrus.infra.services.labelprovider.service.IFilteredLabelProvider;
import org.eclipse.uml2.uml.Element;
/**
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java
index 74b8a978239..156013c2353 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java
@@ -3,12 +3,6 @@ package org.eclipse.papyrus.uml.tools.providers;
import java.util.Iterator;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.ResizableCompartmentEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.services.editpart.EditPartService;
-import org.eclipse.gmf.runtime.notation.BasicCompartment;
-import org.eclipse.gmf.runtime.notation.DecorationNode;
-import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.papyrus.infra.emf.providers.EMFLabelProvider;
import org.eclipse.papyrus.uml.tools.Activator;
@@ -46,9 +40,6 @@ public class UMLLabelProvider extends EMFLabelProvider implements ILabelProvider
/** icon for metaclass */
public static final String ICON_METACLASS = "/icons/Metaclass.gif";//$NON-NLS-1$
- /** icon for a compartment */
- public static final String ICON_COMPARTMENT = "/icons/none_comp_vis.gif"; //$NON-NLS-1$
-
/**
*
* @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
@@ -83,11 +74,6 @@ public class UMLLabelProvider extends EMFLabelProvider implements ILabelProvider
return image == null ? super.getImage(element) : image;
}
- // if the element is a compartment
- if(element instanceof BasicCompartment || element instanceof DecorationNode) {
- return org.eclipse.papyrus.infra.widgets.Activator.getDefault().getImage(Activator.PLUGIN_ID, ICON_COMPARTMENT);
- }
-
return super.getImage(element);
}
@@ -264,11 +250,6 @@ public class UMLLabelProvider extends EMFLabelProvider implements ILabelProvider
// when the element is not a NamedElement, we return its Type name
String className = element.eClass().getName();
return className;
- } else if(element instanceof View) { // maybe it is a view of a compartment
- EditPart dummyEP = EditPartService.getInstance().createGraphicEditPart((View)element);
- if(dummyEP instanceof ResizableCompartmentEditPart) {
- return ((ResizableCompartmentEditPart)dummyEP).getCompartmentName();
- }
}
return super.getText(element);
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/util/UMLProviderHelper.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/util/UMLProviderHelper.java
index e0bce2f435d..506b983cffb 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/util/UMLProviderHelper.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/util/UMLProviderHelper.java
@@ -17,10 +17,10 @@ import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.papyrus.infra.emf.providers.EMFGraphicalContentProvider;
-import org.eclipse.papyrus.infra.emf.providers.strategy.StrategyBasedContentProvider;
import org.eclipse.papyrus.infra.emf.utils.HistoryUtil;
import org.eclipse.papyrus.infra.widgets.strategy.IStrategyBasedContentProvider;
import org.eclipse.papyrus.infra.widgets.strategy.ProviderBasedBrowseStrategy;
+import org.eclipse.papyrus.infra.widgets.strategy.StrategyBasedContentProvider;
import org.eclipse.papyrus.infra.widgets.strategy.TreeBrowseStrategy;
import org.eclipse.papyrus.uml.tools.providers.UMLContainmentBrowseStrategy;
@@ -42,7 +42,12 @@ public class UMLProviderHelper {
* @return
*/
public static EMFGraphicalContentProvider encapsulateProvider(IStructuredContentProvider provider, EObject editedEObject, EStructuralFeature feature, ResourceSet root) {
- String historyId = HistoryUtil.getHistoryID(editedEObject, feature);
+ String historyId;
+ if(editedEObject != null && feature != null) {
+ historyId = HistoryUtil.getHistoryID(editedEObject, feature);
+ } else {
+ historyId = "DefaultHistory";
+ }
IStructuredContentProvider contentProvider;

Back to the top