diff options
Diffstat (limited to 'plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpolicies/DefaultGraphicalNodeEditPolicy.java')
-rw-r--r-- | plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpolicies/DefaultGraphicalNodeEditPolicy.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpolicies/DefaultGraphicalNodeEditPolicy.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpolicies/DefaultGraphicalNodeEditPolicy.java index d807c9c2ba0..a8c43cb80a3 100644 --- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpolicies/DefaultGraphicalNodeEditPolicy.java +++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpolicies/DefaultGraphicalNodeEditPolicy.java @@ -110,10 +110,18 @@ public class DefaultGraphicalNodeEditPolicy extends GraphicalNodeEditPolicy { protected Command getConnectionAndRelationshipCreateCommand(CreateConnectionViewAndElementRequest request) { // Add parameter (source view to the CreateRelationshipRequest) CreateElementRequestAdapter requestAdapter = request.getConnectionViewAndElementDescriptor().getCreateElementRequestAdapter(); - CreateRelationshipRequest createElementRequest = (CreateRelationshipRequest) requestAdapter.getAdapter(CreateRelationshipRequest.class); - - View sourceView = (View) request.getTargetEditPart().getModel(); - createElementRequest.setParameter(RequestParameterConstants.EDGE_CREATE_REQUEST_SOURCE_VIEW, sourceView); + if (requestAdapter != null){ + CreateRelationshipRequest createElementRequest = (CreateRelationshipRequest) requestAdapter.getAdapter(CreateRelationshipRequest.class); + + if (createElementRequest != null && request.getTargetEditPart()!= null){ + View sourceView = (View) request.getTargetEditPart().getModel(); + if( sourceView != null){ + createElementRequest.setParameter(RequestParameterConstants.EDGE_CREATE_REQUEST_SOURCE_VIEW, sourceView); + } + } + + } + return super.getConnectionAndRelationshipCreateCommand(request); } |