Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTruc NGUYEN2015-09-03 09:18:28 +0000
committerGerrit Code Review @ Eclipse.org2015-09-09 08:44:07 +0000
commitfa39899e0ca25d3762151f48f68ec9e61f064ee3 (patch)
tree31ae5e1d9571bd1d5ef919ab97b6bca4a8b03cc5 /plugins/sysml
parent58f08465350bf95efa64c68900bbfb0852aebd72 (diff)
downloadorg.eclipse.papyrus-fa39899e0ca25d3762151f48f68ec9e61f064ee3.tar.gz
org.eclipse.papyrus-fa39899e0ca25d3762151f48f68ec9e61f064ee3.tar.xz
org.eclipse.papyrus-fa39899e0ca25d3762151f48f68ec9e61f064ee3.zip
Bug 439935 - [parametric diagram] 'null' shown in frame header
Change-Id: I330a290c0eb777928847020952ff4068e682909d Signed-off-by: Truc NGUYEN <truc.nguyen@cea.fr>
Diffstat (limited to 'plugins/sysml')
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src/org/eclipse/papyrus/sysml/diagram/parametric/parser/ParametricFrameParser.java19
1 files changed, 14 insertions, 5 deletions
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src/org/eclipse/papyrus/sysml/diagram/parametric/parser/ParametricFrameParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src/org/eclipse/papyrus/sysml/diagram/parametric/parser/ParametricFrameParser.java
index 4bce0d50bad..6cbbdb9ca27 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src/org/eclipse/papyrus/sysml/diagram/parametric/parser/ParametricFrameParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src/org/eclipse/papyrus/sysml/diagram/parametric/parser/ParametricFrameParser.java
@@ -9,12 +9,13 @@
* Contributors:
* Régis CHEVREL: chevrel.regis <at> gmail.com
* CEA LIST - Initial API and implementation
- *
+ * Trung-Truc Nguyen Bug 439935
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.parametric.parser;
import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.gmf.runtime.emf.core.util.EObjectAdapter;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.gmfdiag.common.commands.SemanticAdapter;
import org.eclipse.papyrus.sysml.constraints.ConstraintBlock;
import org.eclipse.papyrus.uml.diagram.common.parser.NamedElementLabelParser;
import org.eclipse.uml2.uml.util.UMLUtil;
@@ -22,13 +23,21 @@ import org.eclipse.uml2.uml.util.UMLUtil;
public class ParametricFrameParser extends NamedElementLabelParser {
/**
- * Respect the SysML diagram frame "par [Block] Block1 [DiagramName]"
+ * /**
+ * Respect the SysML diagram frame "diagramKind [modelElementType] modelElementName [diagramName]"
+ * For the parametric diagram, the modelElementName might be a Block or a ConstraintBlock element
+ *
+ * A parametric diagram frame, therefore, may be:
+ *
+ * par [Block] blockName [diagramName] OR
+ * par [ConstraintBlock] constraintBlockName [diagramName]
+ *
*/
@Override
public String getPrintString(IAdaptable element, int flags) {
String elementType = null;
- if (element instanceof EObjectAdapter) {
- Object realObject = ((EObjectAdapter) element).getRealObject();
+ if(element instanceof SemanticAdapter){
+ Object realObject = ((SemanticAdapter) element).getAdapter(EObject.class);
if (realObject instanceof org.eclipse.uml2.uml.Class) {
elementType = UMLUtil.getStereotypeApplication(((org.eclipse.uml2.uml.Class) realObject), ConstraintBlock.class) != null ? "ConstraintBlock" : "Block";
}

Back to the top