package org.eclipse.uml2.diagram.usecase.edit.parts; import org.eclipse.draw2d.IFigure; import org.eclipse.gef.EditPolicy; import org.eclipse.gmf.runtime.diagram.ui.editparts.ShapeCompartmentEditPart; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.DragDropEditPolicy; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles; import org.eclipse.gmf.runtime.diagram.ui.figures.ResizableCompartmentFigure; import org.eclipse.gmf.runtime.draw2d.ui.figures.ConstrainedToolbarLayout; import org.eclipse.gmf.runtime.notation.View; import org.eclipse.uml2.diagram.common.editpolicies.CreationEditPolicyWithCustomReparent; import org.eclipse.uml2.diagram.common.editpolicies.UpdateDescriptionEditPolicy; import org.eclipse.uml2.diagram.common.editpolicies.XYLayoutEditPolicyWithMovableLabels; import org.eclipse.uml2.diagram.usecase.edit.policies.SubjectUsecasesCanonicalEditPolicy; import org.eclipse.uml2.diagram.usecase.edit.policies.SubjectUsecasesItemSemanticEditPolicy; import org.eclipse.uml2.diagram.usecase.part.Messages; import org.eclipse.uml2.diagram.usecase.part.UMLDiagramUpdater; import org.eclipse.uml2.diagram.usecase.part.UMLVisualIDRegistry; /** * @generated */ public class SubjectUsecasesEditPart extends ShapeCompartmentEditPart { /** * @generated */ public static final int VISUAL_ID = 7004; /** * @generated */ public SubjectUsecasesEditPart(View view) { super(view); } /** * @generated */ public String getCompartmentName() { return Messages.SubjectUsecasesEditPart_title; } /** * @generated */ public IFigure createFigure() { ResizableCompartmentFigure result = (ResizableCompartmentFigure) super.createFigure(); result.setTitleVisibility(false); result.setBorder(null); return result; } /** * @generated */ protected void createDefaultEditPolicies() { super.createDefaultEditPolicies(); installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new SubjectUsecasesItemSemanticEditPolicy()); installEditPolicy(EditPolicyRoles.CREATION_ROLE, new CreationEditPolicyWithCustomReparent(UMLVisualIDRegistry.TYPED_ADAPTER)); installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new DragDropEditPolicy()); installEditPolicy(EditPolicy.LAYOUT_ROLE, new XYLayoutEditPolicyWithMovableLabels()); //replace with U2T specific version installEditPolicy(EditPolicyRoles.CANONICAL_ROLE, new SubjectUsecasesCanonicalEditPolicy()); if (UMLVisualIDRegistry.isShortcutDescendant(getNotationView())) { installEditPolicy(UpdateDescriptionEditPolicy.ROLE, new UpdateDescriptionEditPolicy(UMLDiagramUpdater.TYPED_ADAPTER, false)); } } /** * @generated */ protected void setRatio(Double ratio) { if (getFigure().getParent().getLayoutManager() instanceof ConstrainedToolbarLayout) { super.setRatio(ratio); } } }