diff options
Diffstat (limited to 'plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/src/org/eclipse/papyrus/uml/diagram/clazz/edit/parts/ComponentEditPartCN.java')
-rw-r--r-- | plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/src/org/eclipse/papyrus/uml/diagram/clazz/edit/parts/ComponentEditPartCN.java | 162 |
1 files changed, 94 insertions, 68 deletions
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/src/org/eclipse/papyrus/uml/diagram/clazz/edit/parts/ComponentEditPartCN.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/src/org/eclipse/papyrus/uml/diagram/clazz/edit/parts/ComponentEditPartCN.java index e2c442ac1ec..1414141aec8 100644 --- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/src/org/eclipse/papyrus/uml/diagram/clazz/edit/parts/ComponentEditPartCN.java +++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.clazz/src/org/eclipse/papyrus/uml/diagram/clazz/edit/parts/ComponentEditPartCN.java @@ -73,7 +73,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { /** * @generated */ - public static final String VISUAL_ID = "3021"; + public static final String VISUAL_ID = "Component_Shape_CN"; /** * @generated @@ -100,17 +100,23 @@ public class ComponentEditPartCN extends ClassifierEditPart { installEditPolicy(EditPolicyRoles.CREATION_ROLE, new DefaultCreationEditPolicy()); super.createDefaultEditPolicies(); installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new DefaultSemanticEditPolicy()); + installEditPolicy(EditPolicy.GRAPHICAL_NODE_ROLE, new DefaultGraphicalNodeEditPolicy()); + installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new DragDropEditPolicy()); //in Papyrus diagrams are not strongly synchronised //installEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CANONICAL_ROLE, new org.eclipse.papyrus.uml.diagram.clazz.edit.policies.ComponentCanonicalEditPolicyCN()); + installEditPolicy(EditPolicy.LAYOUT_ROLE, createLayoutEditPolicy()); installEditPolicy("RESIZE_BORDER_ITEMS", new ConstrainedItemBorderLayoutEditPolicy()); //$NON-NLS-1$ installEditPolicy(EditPolicy.GRAPHICAL_NODE_ROLE, new CustomGraphicalNodeEditPolicy()); - installEditPolicy(AppliedStereotypeLabelDisplayEditPolicy.STEREOTYPE_LABEL_POLICY, new AppliedStereotypeNodeLabelDisplayEditPolicy()); + installEditPolicy(AppliedStereotypeLabelDisplayEditPolicy.STEREOTYPE_LABEL_POLICY, + new AppliedStereotypeNodeLabelDisplayEditPolicy()); installEditPolicy(QualifiedNameDisplayEditPolicy.QUALIFIED_NAME_POLICY, new QualifiedNameDisplayEditPolicy()); - installEditPolicy(ShowHideCompartmentEditPolicy.SHOW_HIDE_COMPARTMENT_POLICY, new ShowHideCompartmentEditPolicy()); - installEditPolicy(ShowHideClassifierContentsEditPolicy.SHOW_HIDE_CLASSIFIER_CONTENTS_POLICY, new ShowHideClassifierContentsEditPolicy()); + installEditPolicy(ShowHideCompartmentEditPolicy.SHOW_HIDE_COMPARTMENT_POLICY, + new ShowHideCompartmentEditPolicy()); + installEditPolicy(ShowHideClassifierContentsEditPolicy.SHOW_HIDE_CLASSIFIER_CONTENTS_POLICY, + new ShowHideClassifierContentsEditPolicy()); installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new ClassDiagramDragDropEditPolicy()); installEditPolicy(EditPolicy.LAYOUT_ROLE, new GetChildLayoutEditPolicy()); // XXX need an SCR to runtime to have another abstract superclass that would let children add reasonable editpolicies @@ -125,16 +131,16 @@ public class ComponentEditPartCN extends ClassifierEditPart { @Override protected EditPolicy createChildEditPolicy(EditPart child) { - View childView = (View)child.getModel(); + View childView = (View) child.getModel(); String vid = UMLVisualIDRegistry.getVisualID(childView); - if(vid != null) { - switch(vid) { + if (vid != null) { + switch (vid) { case ComponentFloatingNameEditPartCN.VISUAL_ID: return new BorderItemSelectionEditPolicy() { @Override protected List<?> createSelectionHandles() { - MoveHandle mh = new MoveHandle((GraphicalEditPart)getHost()); + MoveHandle mh = new MoveHandle((GraphicalEditPart) getHost()); mh.setBorder(null); return Collections.singletonList(mh); } @@ -144,7 +150,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { } } EditPolicy result = child.getEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE); - if(result == null) { + if (result == null) { result = new NonResizableEditPolicy(); } return result; @@ -174,16 +180,17 @@ public class ComponentEditPartCN extends ClassifierEditPart { * when a node have external node labels, the methods refreshChildren() remove the EditPart corresponding to the Label from the EditPart * Registry. After that, we can't reset the visibility to true (using the Show/Hide Label Action)! */ - if(NotationPackage.eINSTANCE.getView_Visible().equals(event.getFeature())) { + if (NotationPackage.eINSTANCE.getView_Visible().equals(event.getFeature())) { Object notifier = event.getNotifier(); - List<?> modelChildren = ((View)getModel()).getChildren(); - if(false == notifier instanceof Edge && false == notifier instanceof BasicCompartment) { - if(modelChildren.contains(event.getNotifier())) { + List<?> modelChildren = ((View) getModel()).getChildren(); + if (false == notifier instanceof Edge && false == notifier instanceof BasicCompartment) { + if (modelChildren.contains(event.getNotifier())) { return; } } } super.handleNotificationEvent(event); + } /** @@ -201,41 +208,47 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override public ComponentFigure getPrimaryShape() { - return (ComponentFigure)primaryShape; + return (ComponentFigure) primaryShape; } /** * @generated */ protected boolean addFixedChild(EditPart childEditPart) { - if(childEditPart instanceof ComponentNameEditPartCN) { - ((ComponentNameEditPartCN)childEditPart).setLabel(getPrimaryShape().getNameLabel()); + if (childEditPart instanceof ComponentNameEditPartCN) { + ((ComponentNameEditPartCN) childEditPart).setLabel(getPrimaryShape().getNameLabel()); return true; } - if(childEditPart instanceof ComponentAttributeCompartmentEditPartCN) { + + if (childEditPart instanceof ComponentAttributeCompartmentEditPartCN) { IFigure pane = getPrimaryShape().getAttributeCompartmentFigure(); setupContentPane(pane); // FIXME each comparment should handle his content pane in his own way - pane.add(((ComponentAttributeCompartmentEditPartCN)childEditPart).getFigure()); + pane.add(((ComponentAttributeCompartmentEditPartCN) childEditPart).getFigure()); return true; } - if(childEditPart instanceof ComponentOperationCompartmentEditPartCN) { + + if (childEditPart instanceof ComponentOperationCompartmentEditPartCN) { IFigure pane = getPrimaryShape().getOperationCompartmentFigure(); setupContentPane(pane); // FIXME each comparment should handle his content pane in his own way - pane.add(((ComponentOperationCompartmentEditPartCN)childEditPart).getFigure()); + pane.add(((ComponentOperationCompartmentEditPartCN) childEditPart).getFigure()); return true; } - if(childEditPart instanceof ComponentNestedClassifierCompartmentEditPartCN) { + + if (childEditPart instanceof ComponentNestedClassifierCompartmentEditPartCN) { IFigure pane = getPrimaryShape().getNestedClassifierFigure(); setupContentPane(pane); // FIXME each comparment should handle his content pane in his own way - pane.add(((ComponentNestedClassifierCompartmentEditPartCN)childEditPart).getFigure()); + pane.add(((ComponentNestedClassifierCompartmentEditPartCN) childEditPart).getFigure()); return true; } + //Papyrus Gencode :precise the locator for a template signature - if(childEditPart instanceof RedefinableTemplateSignatureEditPart) { + if (childEditPart instanceof RedefinableTemplateSignatureEditPart) { IBorderItemLocator locator = new TemplateBorderItemLocator(getMainFigure(), PositionConstants.EAST); - getBorderedFigure().getBorderItemContainer().add(((RedefinableTemplateSignatureEditPart)childEditPart).getFigure(), locator); + getBorderedFigure().getBorderItemContainer() + .add(((RedefinableTemplateSignatureEditPart) childEditPart).getFigure(), locator); return true; } + return false; } @@ -243,26 +256,27 @@ public class ComponentEditPartCN extends ClassifierEditPart { * @generated */ protected boolean removeFixedChild(EditPart childEditPart) { - if(childEditPart instanceof ComponentNameEditPartCN) { + if (childEditPart instanceof ComponentNameEditPartCN) { return true; } - if(childEditPart instanceof ComponentAttributeCompartmentEditPartCN) { + if (childEditPart instanceof ComponentAttributeCompartmentEditPartCN) { IFigure pane = getPrimaryShape().getAttributeCompartmentFigure(); - pane.remove(((ComponentAttributeCompartmentEditPartCN)childEditPart).getFigure()); + pane.remove(((ComponentAttributeCompartmentEditPartCN) childEditPart).getFigure()); return true; } - if(childEditPart instanceof ComponentOperationCompartmentEditPartCN) { + if (childEditPart instanceof ComponentOperationCompartmentEditPartCN) { IFigure pane = getPrimaryShape().getOperationCompartmentFigure(); - pane.remove(((ComponentOperationCompartmentEditPartCN)childEditPart).getFigure()); + pane.remove(((ComponentOperationCompartmentEditPartCN) childEditPart).getFigure()); return true; } - if(childEditPart instanceof ComponentNestedClassifierCompartmentEditPartCN) { + if (childEditPart instanceof ComponentNestedClassifierCompartmentEditPartCN) { IFigure pane = getPrimaryShape().getNestedClassifierFigure(); - pane.remove(((ComponentNestedClassifierCompartmentEditPartCN)childEditPart).getFigure()); + pane.remove(((ComponentNestedClassifierCompartmentEditPartCN) childEditPart).getFigure()); return true; } - if(childEditPart instanceof RedefinableTemplateSignatureEditPart) { - getBorderedFigure().getBorderItemContainer().remove(((RedefinableTemplateSignatureEditPart)childEditPart).getFigure()); + if (childEditPart instanceof RedefinableTemplateSignatureEditPart) { + getBorderedFigure().getBorderItemContainer() + .remove(((RedefinableTemplateSignatureEditPart) childEditPart).getFigure()); return true; } return false; @@ -273,7 +287,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected void addChildVisual(EditPart childEditPart, int index) { - if(addFixedChild(childEditPart)) { + if (addFixedChild(childEditPart)) { return; } super.addChildVisual(childEditPart, -1); @@ -284,7 +298,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected void removeChildVisual(EditPart childEditPart) { - if(removeFixedChild(childEditPart)) { + if (removeFixedChild(childEditPart)) { return; } super.removeChildVisual(childEditPart); @@ -295,16 +309,16 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected IFigure getContentPaneFor(IGraphicalEditPart editPart) { - if(editPart instanceof ComponentAttributeCompartmentEditPartCN) { + if (editPart instanceof ComponentAttributeCompartmentEditPartCN) { return getPrimaryShape().getAttributeCompartmentFigure(); } - if(editPart instanceof ComponentOperationCompartmentEditPartCN) { + if (editPart instanceof ComponentOperationCompartmentEditPartCN) { return getPrimaryShape().getOperationCompartmentFigure(); } - if(editPart instanceof ComponentNestedClassifierCompartmentEditPartCN) { + if (editPart instanceof ComponentNestedClassifierCompartmentEditPartCN) { return getPrimaryShape().getNestedClassifierFigure(); } - if(editPart instanceof IBorderItemEditPart) { + if (editPart instanceof IBorderItemEditPart) { return getBorderedFigure().getBorderItemContainer(); } return getContentPane(); @@ -315,7 +329,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected void addBorderItem(IFigure borderItemContainer, IBorderItemEditPart borderItemEditPart) { - if(borderItemEditPart instanceof ComponentFloatingNameEditPartCN) { + if (borderItemEditPart instanceof ComponentFloatingNameEditPartCN) { IBorderItemLocator locator = new RoundedRectangleLabelPositionLocator(getMainFigure()); borderItemContainer.add(borderItemEditPart.getFigure(), locator); } else { @@ -343,6 +357,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { @Override protected NodeFigure createMainFigure() { return new SelectableBorderedNodeFigure(createMainFigureWithSVG()); + } /** @@ -355,7 +370,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected IFigure setupContentPane(IFigure nodeShape) { - if(nodeShape.getLayoutManager() == null) { + if (nodeShape.getLayoutManager() == null) { ConstrainedToolbarLayout layout = new ConstrainedToolbarLayout(); layout.setSpacing(5); nodeShape.setLayoutManager(layout); @@ -368,7 +383,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override public IFigure getContentPane() { - if(contentPane != null) { + if (contentPane != null) { return contentPane; } return super.getContentPane(); @@ -379,7 +394,7 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected void setForegroundColor(Color color) { - if(primaryShape != null) { + if (primaryShape != null) { primaryShape.setForegroundColor(color); } } @@ -397,8 +412,8 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override protected void setLineType(int style) { - if(primaryShape instanceof IPapyrusNodeFigure) { - ((IPapyrusNodeFigure)primaryShape).setLineStyle(style); + if (primaryShape instanceof IPapyrusNodeFigure) { + ((IPapyrusNodeFigure) primaryShape).setLineStyle(style); } } @@ -415,38 +430,49 @@ public class ComponentEditPartCN extends ClassifierEditPart { */ @Override public EditPart getTargetEditPart(Request request) { - if(request instanceof CreateViewAndElementRequest) { - CreateElementRequestAdapter adapter = ((CreateViewAndElementRequest)request).getViewAndElementDescriptor().getCreateElementRequestAdapter(); - IElementType type = (IElementType)adapter.getAdapter(IElementType.class); - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Property_3002)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentAttributeCompartmentEditPartCN.VISUAL_ID)); + if (request instanceof CreateViewAndElementRequest) { + CreateElementRequestAdapter adapter = ((CreateViewAndElementRequest) request).getViewAndElementDescriptor() + .getCreateElementRequestAdapter(); + IElementType type = (IElementType) adapter.getAdapter(IElementType.class); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Property_ComponentAttributeLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentAttributeCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Operation_3003)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentOperationCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Operation_ComponentOperationLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentOperationCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Reception_3011)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentOperationCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Reception_ReceptionLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentOperationCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Class_3004)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Class_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Interface_3037)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Interface_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Enumeration_3053)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Enumeration_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.PrimitiveType_3046)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.PrimitiveType_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.DataType_3045)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.DataType_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Signal_3051)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Signal_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } - if(UMLElementTypes.isKindOf(type, UMLElementTypes.Component_3057)) { - return getChildBySemanticHint(UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); + if (UMLElementTypes.isKindOf(type, UMLElementTypes.Component_ComponentNestedClassifierLabel)) { + return getChildBySemanticHint( + UMLVisualIDRegistry.getType(ComponentNestedClassifierCompartmentEditPartCN.VISUAL_ID)); } } return super.getTargetEditPart(request); |