Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend')
-rw-r--r--plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend102
1 files changed, 52 insertions, 50 deletions
diff --git a/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend b/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend
index caffb6b4f5a..6129d7cf368 100644
--- a/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend
+++ b/plugins/toolsmiths/gmf-tooling/org.eclipse.papyrus.gmf.codegen.xtend/xtend/xpt/providers/EditPartModelingAssistantProvider.xtend
@@ -1,3 +1,17 @@
+/*******************************************************************************
+ * Copyright (c) 2007, 2021 Borland Software Corporation, CEA LIST, Artal and others
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Michael Golubev (Montages) - #368521 - migrate to Xtend2
+ * Etienne Allogo (ARTAL) - etienne.allogo@artal.fr - Bug 569174 : L1.2 clean up providers
+ *****************************************************************************/
package xpt.providers
import com.google.inject.Inject
@@ -8,20 +22,21 @@ import xpt.Common
import xpt.CodeStyle
import org.eclipse.papyrus.gmf.codegen.gmfgen.GenNode
-@com.google.inject.Singleton
+@com.google.inject.Singleton
class EditPartModelingAssistantProvider {
@Inject extension Utils_qvto;
@Inject extension Common_qvto;
@Inject extension Common;
-
+ @Inject extension CodeStyle;
+
@Inject ModelingAssistantProvider xptModelingAssistantProvider;
@Inject CodeStyle xptCodeStyle;
@Inject ElementTypes xptElementTypes;
-
+
def className(GenContainerBase it) '''«diagram.modelingAssistantProviderClassName»Of«editPartClassName»'''
def packageName(GenContainerBase it) '''«getDiagram().providersPackageName».assistants'''
-
+
def qualifiedClassName(GenContainerBase it) '''«packageName».«className»'''
def EditPartModelingAssistantProvider(GenContainerBase it) '''
@@ -32,12 +47,10 @@ class EditPartModelingAssistantProvider {
public class «className» «extendsList» {
«getTypesForPopupBar»
-
- «linkAssistantMethods»
- «additions»
+ «linkAssistantMethods»
}
-'''
+ '''
def extendsList(GenContainerBase it) '''extends «xptModelingAssistantProvider.qualifiedClassName(it.diagram)»'''
@@ -46,11 +59,11 @@ class EditPartModelingAssistantProvider {
«generatedMemberComment»
«xptCodeStyle.overrideC(it)»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForPopupBar(org.eclipse.core.runtime.IAdaptable host) {
- java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(«it.getAssistantNodes().size»);
+ java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(«it.getAssistantNodes().size»);
«FOR node : it.getAssistantNodes()»
types.add(«xptElementTypes.accessElementType(node)»);
«ENDFOR»
- return types;
+ return types;
}
«ENDIF»
'''
@@ -60,22 +73,22 @@ class EditPartModelingAssistantProvider {
def dispatch linkAssistantMethods(GenNode it)'''
«IF getAssistantOutgoingLinks(it).notEmpty»
«getRelTypesOnSource»
-
+
«doGetRelTypesOnSource»
-
- «getRelTypesOnSourceAndTarget»
-
- «doGetRelTypesOnSourceAndTarget»
-
- «getTypesForTarget»
-
+
+ «getRelTypesOnSourceAndTarget»
+
+ «doGetRelTypesOnSourceAndTarget»
+
+ «getTypesForTarget»
+
«doGetTypesForTarget»
- «ENDIF»
+ «ENDIF»
«IF getAssistantIncomingLinks(it).notEmpty»
- «getRelTypesOnTarget»
+ «getRelTypesOnTarget»
- «doGetRelTypesOnTarget»
+ «doGetRelTypesOnTarget»
«getTypesForSource»
@@ -88,8 +101,7 @@ class EditPartModelingAssistantProvider {
«xptCodeStyle.overrideC(it)»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnSource(org.eclipse.core.runtime.IAdaptable source) {
org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart sourceEditPart =
- (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) source.getAdapter(
- org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
+ source.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
return doGetRelTypesOnSource((«it.editPartQualifiedClassName») sourceEditPart);
}
'''
@@ -99,8 +111,7 @@ class EditPartModelingAssistantProvider {
«xptCodeStyle.overrideC(it)»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnTarget(org.eclipse.core.runtime.IAdaptable target) {
org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart =
- (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) target.getAdapter(
- org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
+ target.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
return doGetRelTypesOnTarget((«it.editPartQualifiedClassName») targetEditPart);
}
'''
@@ -108,14 +119,11 @@ class EditPartModelingAssistantProvider {
def getRelTypesOnSourceAndTarget(GenNode it) '''
«generatedMemberComment»
«xptCodeStyle.overrideC(it)»
- public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnSourceAndTarget(
- org.eclipse.core.runtime.IAdaptable source, org.eclipse.core.runtime.IAdaptable target) {
+ public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getRelTypesOnSourceAndTarget(org.eclipse.core.runtime.IAdaptable source, org.eclipse.core.runtime.IAdaptable target) {
org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart sourceEditPart =
- (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) source.getAdapter(
- org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
+ source.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart =
- (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) target.getAdapter(
- org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
+ target.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
return doGetRelTypesOnSourceAndTarget((«it.editPartQualifiedClassName») sourceEditPart, targetEditPart);
}
'''
@@ -123,11 +131,9 @@ class EditPartModelingAssistantProvider {
def getTypesForSource(GenNode it) '''
«generatedMemberComment»
«xptCodeStyle.overrideC(it)»
- public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForSource(org.eclipse.core.runtime.IAdaptable target,
- org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) {
+ public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForSource(org.eclipse.core.runtime.IAdaptable target, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) {
org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart =
- (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) target.getAdapter(
- org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
+ target.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
return doGetTypesForSource((«it.editPartQualifiedClassName») targetEditPart, relationshipType);
}
'''
@@ -136,11 +142,9 @@ class EditPartModelingAssistantProvider {
«IF getAssistantOutgoingLinks(it).notEmpty»
«generatedMemberComment»
«xptCodeStyle.overrideC(it)»
- public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForTarget(org.eclipse.core.runtime.IAdaptable source,
- org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) {
+ public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> getTypesForTarget(org.eclipse.core.runtime.IAdaptable source, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) {
org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart sourceEditPart =
- (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart) source.getAdapter(
- org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
+ source.getAdapter(org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart.class);
return doGetTypesForTarget((«it.editPartQualifiedClassName») sourceEditPart, relationshipType);
}
«ENDIF»
@@ -150,7 +154,7 @@ class EditPartModelingAssistantProvider {
def doGetRelTypesOnSource(GenNode it) '''
«generatedMemberComment»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetRelTypesOnSource(«it.editPartQualifiedClassName» source) {
- java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(«getAssistantOutgoingLinks(it).size»);
+ java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(«getAssistantOutgoingLinks(it).size»);
«FOR link : getAssistantOutgoingLinks(it)»
types.add(«xptElementTypes.accessElementType(link)»);
«ENDFOR»
@@ -162,7 +166,7 @@ class EditPartModelingAssistantProvider {
def doGetRelTypesOnTarget(GenNode it) '''
«generatedMemberComment»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetRelTypesOnTarget(«it.editPartQualifiedClassName» target) {
- java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>(«getAssistantIncomingLinks(it).size»);
+ java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>(«getAssistantIncomingLinks(it).size»);
«FOR link : getAssistantIncomingLinks(it) »
types.add(«xptElementTypes.accessElementType(link)»);
«ENDFOR»
@@ -174,7 +178,7 @@ class EditPartModelingAssistantProvider {
def doGetRelTypesOnSourceAndTarget(GenNode it) '''
«generatedMemberComment»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetRelTypesOnSourceAndTarget(«it.editPartQualifiedClassName» source, org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart targetEditPart) {
- java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.LinkedList<org.eclipse.gmf.runtime.emf.type.core.IElementType>();
+ java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.LinkedList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>();
«FOR link : getAssistantOutgoingLinks(it)»
«FOR target : selectGenNodes(link.targets)»
if (targetEditPart instanceof «target.getEditPartQualifiedClassName()») {
@@ -185,38 +189,36 @@ class EditPartModelingAssistantProvider {
return types;
}
'''
-
+
// pre: getAssistantIncomingLinks(this).size() > 0
def doGetTypesForSource(GenNode it) '''
«generatedMemberComment»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetTypesForSource(«it.editPartQualifiedClassName» target, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) {
- java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>();
+ java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>();
«FOR link : getAssistantIncomingLinks(it) SEPARATOR ' else '»
if (relationshipType == «xptElementTypes.accessElementType(link)») {
«FOR source : selectGenNodes(link.sources)»
- types.add(«xptElementTypes.accessElementType(source)»);
+ types.add(«xptElementTypes.accessElementType(source)»);
«ENDFOR»
}
«ENDFOR»
return types;
}
'''
-
+
// pre: getAssistantOutgoingLinks(this).size() > 0
def doGetTypesForTarget(GenNode it) '''
«generatedMemberComment»
public java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> doGetTypesForTarget(«it.editPartQualifiedClassName» source, org.eclipse.gmf.runtime.emf.type.core.IElementType relationshipType) {
- java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<org.eclipse.gmf.runtime.emf.type.core.IElementType>();
+ java.util.List<org.eclipse.gmf.runtime.emf.type.core.IElementType> types = new java.util.ArrayList<«diamondOp('org.eclipse.gmf.runtime.emf.type.core.IElementType')»>();
«FOR link : getAssistantOutgoingLinks(it) SEPARATOR ' else '»
if (relationshipType == «xptElementTypes.accessElementType(link)») {
«FOR target : selectGenNodes(link.targets)»
- types.add(«xptElementTypes.accessElementType(target)»);
+ types.add(«xptElementTypes.accessElementType(target)»);
«ENDFOR»
}
«ENDFOR»
return types;
}
'''
-
- def additions(GenContainerBase it)''''''
} \ No newline at end of file

Back to the top