diff options
author | ptessier | 2014-03-04 13:57:05 +0000 |
---|---|---|
committer | ptessier | 2014-03-04 13:57:05 +0000 |
commit | 493d78d4af3fa77cc1b71e0b4ae4b25a1281fc82 (patch) | |
tree | 5ccb49145fb7679ce384ab8d78f96f13b0c83235 /plugins | |
parent | 236cb1a4af4d3fdbb27e6d70ef7e0d99c98c4dcc (diff) | |
download | org.eclipse.papyrus-493d78d4af3fa77cc1b71e0b4ae4b25a1281fc82.tar.gz org.eclipse.papyrus-493d78d4af3fa77cc1b71e0b4ae4b25a1281fc82.tar.xz org.eclipse.papyrus-493d78d4af3fa77cc1b71e0b4ae4b25a1281fc82.zip |
Bug 386118 - [EMF Facet] Papyrus should progressively support EMF Facet
0.2
adapt oep.view.papyrus
Diffstat (limited to 'plugins')
22 files changed, 137 insertions, 259 deletions
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF index b5dd7f2a8c8..285a95383cf 100644 --- a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF +++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF @@ -20,6 +20,7 @@ Bundle-RequiredExecutionEnvironment: J2SE-1.5 Bundle-ActivationPolicy: lazy Export-Package: org.eclipse.papyrus.emf.facet.custom.ui, org.eclipse.papyrus.emf.facet.custom.ui.internal, + org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt, org.eclipse.papyrus.emf.facet.custom.ui.internal.exported, org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog, org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.exception diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java index 84950c7f7db..579ea41c864 100644 --- a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java +++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java @@ -42,7 +42,9 @@ public class ResolvingCustomizedLabelProvider implements ICustomizedLabelProvide final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
image = this.delegate.getImage(parent.getEObject(), treeElement.getEAttribute());
- } else {
+ }
+
+ else {
image = this.delegate.getImage(CustomizedContentProviderUtils.resolve(element));
}
return image;
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java index 1d80907c116..abe16d648b9 100644 --- a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java +++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java @@ -19,6 +19,7 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.ETypedElement;
import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedImage;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
import org.eclipse.papyrus.emf.facet.custom.ui.internal.Activator;
@@ -63,14 +64,17 @@ public class ImageQuery implements IJavaQuery2<EObject, IImage> { final IItemLabelProvider itemLabelProvider = (IItemLabelProvider) adapterFactory
.adapt(source, IItemLabelProvider.class);
if (itemLabelProvider != null) {
- final ImageDescriptor imgDescriptor = ExtendedImageRegistry
- .getInstance().getImageDescriptor(source);
- final IImageProvider imgProvider = IImageProviderFactory.DEFAULT
- .createIImageProvider(Activator.getDefault());
- if (imgDescriptor != null) {
- final Image image = imgProvider.getImage(imgDescriptor);
- result = new ImageWrapper(image);
- }
+ Object imageObject = itemLabelProvider.getImage(source);
+ Image image = ExtendedImageRegistry.getInstance().getImage(imageObject);
+ result = new ImageWrapper(image);
+//// final ImageDescriptor imgDescriptor = ExtendedImageRegistry
+//// .getInstance().getImageDescriptor(source);
+// final IImageProvider imgProvider = IImageProviderFactory.DEFAULT
+// .createIImageProvider(Activator.getDefault());
+// if (imgDescriptor != null) {
+// final Image image = imgProvider.getImage(imgDescriptor);
+// result = new ImageWrapper(image);
+// }
}
return result;
}
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java index 67bc59ffdbb..2784c6f96e0 100644 --- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java +++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java @@ -20,7 +20,10 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement;
import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.DecoratingCustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ResolvingCustomizedLabelProvider;
import org.eclipse.papyrus.infra.emf.Activator;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.labelprovider.service.IDetailLabelProvider;
@@ -35,7 +38,7 @@ import org.eclipse.swt.graphics.Image; *
* @author Camille Letavernier
*/
-public class EMFLabelProvider extends CustomizedLabelProvider implements IDetailLabelProvider, IQualifierLabelProvider {
+public class EMFLabelProvider extends ResolvingCustomizedLabelProvider implements IDetailLabelProvider, IQualifierLabelProvider {
protected ILabelProvider baseEMFLabelProvider;
@@ -43,7 +46,7 @@ public class EMFLabelProvider extends CustomizedLabelProvider implements IDetail * Creates a new EMFObjectLabelProvider.
*/
public EMFLabelProvider() {
- super(Activator.getDefault().getCustomizationManager()); //Note: CustomizableModelLabelProvider doesn't use the CustomizationManager. It relies on the content provider's CustomizationManager
+ super(new DecoratingCustomizedLabelProvider(Activator.getDefault().getCustomizationManager())); //Note: CustomizableModelLabelProvider doesn't use the CustomizationManager. It relies on the content provider's CustomizationManager
baseEMFLabelProvider = new StandardEMFLabelProvider();
}
@@ -56,9 +59,9 @@ public class EMFLabelProvider extends CustomizedLabelProvider implements IDetail return ""; //$NON-NLS-1$
}
- //if(element instanceof ITreeElement) {
- // return super.getText(element);
- //}
+// if(element instanceof TreeElement) {
+// return super.getText(element);
+// }
EObject eObject = EMFHelper.getEObject(element);
if(eObject != null) {
@@ -104,9 +107,9 @@ public class EMFLabelProvider extends CustomizedLabelProvider implements IDetail */
@Override
public Image getImage(Object element) {
- //if(element instanceof ITreeElement) {
- // return super.getImage(element);
- //}
+ if(element instanceof TreeElement) {
+ return super.getImage(element);
+ }
EObject eObject = EMFHelper.getEObject(element);
if(eObject != null) {
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF index e2f8f23b03f..92b11cb8c0b 100644 --- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF +++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF @@ -1,15 +1,23 @@ Manifest-Version: 1.0
-Require-Bundle: org.eclipse.ui,org.eclipse.core.runtime,com.google.gua
- va;bundle-version="11.0.0",org.eclipse.papyrus.views.modelexplorer;bu
- ndle-version="1.0.0",org.eclipse.gmf.runtime.notation,org.eclipse.emf
- .transaction,org.eclipse.gmf.runtime.common.core,org.eclipse.gmf.runt
- ime.emf.commands.core,org.eclipse.core.expressions,org.eclipse.gmf.ru
- ntime.emf.type.core,org.eclipse.papyrus.infra.core.sasheditor;bundle-
- version="1.0.0",org.eclipse.papyrus.infra.gmfdiag.commands;bundle-ver
- sion="1.0.0",org.eclipse.papyrus.infra.core;bundle-version="1.0.0",or
- g.eclipse.papyrus.emf.facet.query.java.core,org.eclipse.emf.ecore,org
- .eclipse.papyrus.emf.facet.efacet.core,org.eclipse.papyrus.emf.facet.
- efacet,org.eclipse.papyrus.emf.facet.efacet.metamodel
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ com.google.guava;bundle-version="11.0.0",
+ org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.notation,
+ org.eclipse.emf.transaction,
+ org.eclipse.gmf.runtime.common.core,
+ org.eclipse.gmf.runtime.emf.commands.core,
+ org.eclipse.core.expressions,
+ org.eclipse.gmf.runtime.emf.type.core,
+ org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.efacet.core,
+ org.eclipse.papyrus.emf.facet.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel,
+ org.eclipse.papyrus.emf.facet.custom.metamodel
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
@@ -21,4 +29,5 @@ Bundle-ManifestVersion: 2 Bundle-SymbolicName: org.eclipse.papyrus.infra.gmfdiag.modelexplorer;s
ingleton:=true
Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Import-Package: org.eclipse.papyrus.emf.facet.custom.ui
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.custom b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.custom index ba90b170ae9..2a98282a138 100644 --- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.custom +++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.custom @@ -3,8 +3,12 @@ <eClassifiers xsi:type="custom:EClassCustomization" name="Diagram" documentation="Representation of diagram in model explorer">
<extendedMetaclass href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
<facetOperations name="GetDiagramIcon" documentation="Return the path to the icon of the corresponding diagram">
- <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
<query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.GetDiagramIcon"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/image"/>
</facetOperations>
<facetOperations name="NotVisibleStructuralFeature">
<eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java index 4b41e0f861e..23b836b4cf5 100644 --- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java +++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java @@ -8,11 +8,14 @@ * * Contributors: * Atos - Initial API and implementation + * Patrick Tessier (CEA LIST) Modification * */ package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries; import org.eclipse.gmf.runtime.notation.Diagram; +import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage; +import org.eclipse.papyrus.emf.facet.custom.ui.ImageUtils; import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager; import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException; import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2; @@ -20,10 +23,10 @@ import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2; import org.eclipse.papyrus.views.modelexplorer.queries.AbstractGetEditorIconQuery; /** Return the path to the icon of the corresponding diagram */ -public class GetDiagramIcon extends AbstractGetEditorIconQuery implements IJavaQuery2<Diagram, String> { +public class GetDiagramIcon extends AbstractGetEditorIconQuery implements IJavaQuery2<Diagram, IImage> { - public String evaluate(Diagram source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException { - return "/" + getEditorRegistry(source).getEditorURLIcon(source); //$NON-NLS-1$ + public IImage evaluate(Diagram source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException { + return ImageUtils.wrap(org.eclipse.emf.common.util.URI.createPlatformPluginURI(getEditorRegistry(source).getEditorURLIcon(source), true).toString()); //$NON-NLS-1$ } } diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/plugin.xml b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/plugin.xml index fdc18ad9e1d..cd19f0fa84b 100644 --- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/plugin.xml +++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/plugin.xml @@ -2,7 +2,7 @@ <?eclipse version="3.0"?> <plugin> - <extension point="org.eclipse.ui.contexts" id="ui-context"> + point="org.eclipse.ui.contexts" id="ui-context"> <?gmfgen generated="true"?> <context description="%context.description" diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF index 62ffdb8146c..952200d7145 100644 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF +++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF @@ -46,7 +46,12 @@ Require-Bundle: org.eclipse.ui, org.eclipse.papyrus.emf.facet.custom.metamodel,
org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.4.0",
org.eclipse.papyrus.emf.facet.query.java.core,
- org.eclipse.papyrus.emf.facet.custom.core
+ org.eclipse.papyrus.emf.facet.custom.core,
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.efacet.core,
+ org.eclipse.papyrus.emf.facet.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel,
+ org.eclipse.papyrus.emf.facet.util.emf.core
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml index bc72533512d..5ade4cbece9 100644 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml +++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml @@ -2,7 +2,16 @@ <?eclipse version="3.4"?>
<plugin>
+<extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="resources/PapyrusPage.custom"/>
+</extension>
<extension-point id="actionHandler" name="actionHandler" schema="schema/org.eclipse.papyrus.views.modelexplorer.actionHandler.exsd"/>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration
+ file="resources/ReadOnlyElement.custom">
+ </modeldeclaration>
+ </extension>
<extension point="org.eclipse.ui.views">
<view category="org.eclipse.papyrus.views.category" class="org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView" icon="icons/ModelExplorer.gif" id="org.eclipse.papyrus.views.modelexplorer.modelexplorer" name="Model Explorer" restorable="true">
</view>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom deleted file mode 100644 index 1fbd552d2d1..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/emf/2002/Ecore">
- <types metaclassName="ecore.EObject">
- <customizedFeatures customizedFeature="color">
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="(192,192,192)"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusEcoreBrowserQuery#IsReadOnly"/>
- </valueCases>
- </customizedFeatures>
- <customizedFeatures customizedFeature="italic">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusEcoreBrowserQuery#IsReadOnly"/>
- </defaultValue>
- </customizedFeatures>
- <customizedFeatures customizedFeature="hideMetaclassName">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet deleted file mode 100644 index 08bf8798e02..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusEcoreBrowserQuery" description="Queries for the Ecore Metamodel">
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <queries xsi:type="query:JavaModelQuery" name="IsReadOnly" description="This query tests if the current EditingDomain is READ-ONLY or not" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsReadOnly">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPage.custom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPage.custom new file mode 100644 index 00000000000..26ed3765476 --- /dev/null +++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPage.custom @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:customQuery="http://www.eclipse.org/papyrus/emf/facet/custom/0.3.incubation/query" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" name="PapyrusPage">
+ <eClassifiers xsi:type="efacet:Facet" name="PapyrusPage" instanceClassName="" documentation="a page can be a table or a diagram for example" conformanceTypedElement="//PapyrusPage/isPage">
+ <extendedMetaclass href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetOperations name="isPage">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsOpenedPage"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:FacetCustomization" name="PapyrusPage" extendedFacets="//PapyrusPage">
+ <facetOperations name="PageOvelayIcon" documentation="display the icon if the page is opened in the model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="customQuery:URIImageQuery" uri="platform:/plugin/org.eclipse.papyrus.views.modelexplorer/icons/opened.gif"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/topRightOverlay"/>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet deleted file mode 100644 index 1dfc49caae7..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?>
-<facet:FacetSet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:facet="http://www.eclipse.org/EmfFacet/infra/facet/0.8.incubation" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusPages" nsURI="http://www.eclipse.org/papyrus/views/modelexplorer/pages" nsPrefix="papyrusPages">
- <eClassifiers xsi:type="facet:Facet" name="Page" abstract="true">
- <eSuperTypes href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- <conditionQuery xsi:type="query:JavaModelQuery" href="PapyrusPages.querySet#isPage"/>
- </eClassifiers>
- <extendedPackage href="http://www.eclipse.org/emf/2002/Ecore#/"/>
-</facet:FacetSet>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet deleted file mode 100644 index 70052f53d8b..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusPages" description="">
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <queries xsi:type="query:JavaModelQuery" name="isPage" description="Tests whether an element is a page" lowerBound="1" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsPage">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="isOpen" description="Tests whether a Page is opened" isExternalContextDependent="true" lowerBound="1" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsOpen">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom deleted file mode 100644 index eeacea75605..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/papyrus/views/modelexplorer/pages">
- <types metaclassName="PapyrusPages.Page">
- <customizedFeatures customizedFeature="facetOverlayIcon">
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="/org.eclipse.papyrus.views.modelexplorer/icons/opened.gif:TopRight"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusPages#isOpen"/>
- </valueCases>
- </customizedFeatures>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom new file mode 100644 index 00000000000..a6bf25fd71f --- /dev/null +++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" xmlns:query="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query" name="ReadOnlyElement">
+ <eClassifiers xsi:type="efacet:Facet" name="ReadOnlyEObject" instanceClassName="" documentation="a page can be a table or a diagram for example" conformanceTypedElement="//ReadOnlyEObject/isReadOnly">
+ <extendedMetaclass href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetOperations name="isReadOnly" documentation="test if the eObject is read only">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsReadOnly"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:FacetCustomization" name="ReadOnlyEObjectCustom" extendedFacets="//ReadOnlyEObject">
+ <facetOperations name="ReadOnlyItalic" documentation="display the icon if the page is opened in the model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="query:TrueLiteralQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/isItalic"/>
+ </facetOperations>
+ <facetOperations name="ReadOnlyColor" documentation="display the icon if the page is opened in the model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Color"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsReadOnlyColorQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/foreground"/>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/AbstractEditorContainerQuery.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/AbstractEditorContainerQuery.java deleted file mode 100644 index d835c942cdc..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/AbstractEditorContainerQuery.java +++ /dev/null @@ -1,41 +0,0 @@ -/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
- *
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
- *
- *****************************************************************************/
-
-package org.eclipse.papyrus.views.modelexplorer.queries;
-
-
-/**
- *
- * An abstract class to get the pageMngr
- *
- */
-public abstract class AbstractEditorContainerQuery {//we don't need to implements IJavaModelQuery here
-
- // /**
- // *
- // * @return
- // * @throws ServiceException
- // */
- // @Deprecated
- // //@unused
- // protected IPageMngr getPageMngr() throws ServiceException {
- // // pageMngr can't be static, because there is a new IPageMngr each time we open a Papyrus Editor
- // IMultiDiagramEditor papyrusEditor = EditorUtils.getMultiDiagramEditor();
- // if (papyrusEditor != null) {
- // ServicesRegistry serviceRegistry = papyrusEditor.getServicesRegistry();
- // return ServiceUtils.getInstance().getIPageMngr(serviceRegistry);
- // }
- // throw new ServiceException("Can't retrieve the IPageMngr");
- // }
-}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/AbstractGetEditorIconQuery.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/AbstractGetEditorIconQuery.java deleted file mode 100644 index a828c2feafa..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/AbstractGetEditorIconQuery.java +++ /dev/null @@ -1,69 +0,0 @@ -/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
- *
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
- *
- *****************************************************************************/
-
-package org.eclipse.papyrus.views.modelexplorer.queries;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.papyrus.infra.core.editorsfactory.IPageIconsRegistry;
-import org.eclipse.papyrus.infra.core.editorsfactory.IPageIconsRegistryExtended;
-import org.eclipse.papyrus.infra.core.editorsfactory.PageIconsRegistry;
-import org.eclipse.papyrus.infra.core.services.ServiceException;
-import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
-
-/**
- *
- * An abstract class to get the iconRegistery
- *
- */
-public abstract class AbstractGetEditorIconQuery {//we don't need to implements IJavaModelQuery here
-
- /**
- * the icon registry
- */
- private static IPageIconsRegistry editorRegistry;
-
- /**
- * Get the EditorRegistry used to create editor instances. This default
- * implementation return the singleton eINSTANCE. This method can be
- * subclassed to return another registry.
- *
- * @return the singleton eINSTANCE of editor registry
- */
- protected IPageIconsRegistryExtended getEditorRegistry(EObject context) {
- if(editorRegistry == null) {
- editorRegistry = createEditorRegistry(context);
- }
- if(!(editorRegistry instanceof IPageIconsRegistryExtended)) {
- throw new RuntimeException("The editor registry do not implement IPageIconsRegistryExtended");////$NON-NLS-1$
- }
- return (IPageIconsRegistryExtended)editorRegistry;
- }
-
- /**
- * Return the EditorRegistry for nested editor descriptors. Subclass should
- * implements this method in order to return the registry associated to the
- * extension point namespace.
- *
- * @return the EditorRegistry for nested editor descriptors
- */
- protected IPageIconsRegistry createEditorRegistry(EObject context) {
- try {
- return ServiceUtilsForEObject.getInstance().getService(IPageIconsRegistry.class, context);
- } catch (ServiceException e) {
- // Not found, return an empty one which return null for each
- // request.
- return new PageIconsRegistry();
- }
- }
-}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpen.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpenedPage.java index 1f4e22e5d19..7dfee904aaa 100644 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpen.java +++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpenedPage.java @@ -20,8 +20,8 @@ import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager; import org.eclipse.papyrus.infra.core.services.ServiceException; import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject; -/** Tests whether a Page is opened */ -public class IsOpen implements IJavaQuery2<EObject, Boolean> { +/** Tests whether an element is a page */ +public class IsOpenedPage implements IJavaQuery2<EObject, Boolean> { public Boolean evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException { @@ -32,6 +32,5 @@ public class IsOpen implements IJavaQuery2<EObject, Boolean> { //Ignore } return false; - } } diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsPage.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsPage.java deleted file mode 100644 index 093bfc17ee1..00000000000 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsPage.java +++ /dev/null @@ -1,36 +0,0 @@ -/***************************************************************************** - * Copyright (c) 2013 CEA LIST. - * - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation - *****************************************************************************/ -package org.eclipse.papyrus.views.modelexplorer.queries; - -import org.eclipse.emf.ecore.EObject; -import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager; -import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException; -import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2; -import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2; -import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager; -import org.eclipse.papyrus.infra.core.services.ServiceException; -import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject; - -/** Tests whether an element is a page */ -public class IsPage implements IJavaQuery2<EObject, Boolean> { - - - public Boolean evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException { - try { - IPageManager pageManager = ServiceUtilsForEObject.getInstance().getIPageManager(source); - return pageManager.allPages().contains(source); - } catch (ServiceException ex) { - //Ignore - } - return false; - } -} diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnlyColorQuery.java index 71d666b98cb..8d74525b5be 100644 --- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java +++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnlyColorQuery.java @@ -1,42 +1,37 @@ /*****************************************************************************
- * Copyright (c) 2011 Atos.
+ * Copyright (c) 2013 CEA LIST.
+ *
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Atos - Initial API and implementation
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.views.modelexplorer.queries;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
-import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.Color;
/**
- * Create a query which will return true if the ressource is in read only mode.
- *
+ * The purpose of this request is the return the color for read only elements
+ *
*/
-@Deprecated
-public class IsReadOnly implements IJavaQuery2<EObject, Boolean> {
-
+public class IsReadOnlyColorQuery implements IJavaQuery2<EObject, IColor> {
- public Boolean evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
- EditingDomain editingDomain = AdapterFactoryEditingDomain.getEditingDomainFor(source);
- if(editingDomain != null) {
- if(editingDomain.isReadOnly(source.eResource())) {
- return true;
- }
- }
- return false;
+ public IColor evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return new Color(192,192,192);
}
}
|