package org.eclipse.papyrus.uml.diagram.statemachine.custom.edit.part; import org.eclipse.draw2d.IFigure; import org.eclipse.emf.common.notify.Notification; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles; import org.eclipse.gmf.runtime.notation.View; import org.eclipse.papyrus.uml.diagram.statemachine.custom.figures.CustomShapeCompartmentFigure; import org.eclipse.papyrus.uml.diagram.statemachine.edit.parts.StateCompartmentEditPart; import org.eclipse.uml2.uml.State; public class CustomStateCompartmentEditPart extends StateCompartmentEditPart { public CustomStateCompartmentEditPart(View view) { super(view); // TODO Auto-generated constructor stub } @Override protected void createDefaultEditPolicies() { // TODO Auto-generated method stub super.createDefaultEditPolicies(); removeEditPolicy(EditPolicyRoles.CONNECTION_HANDLES_ROLE); removeEditPolicy(EditPolicyRoles.POPUPBAR_ROLE); } public IFigure createFigure() { CustomShapeCompartmentFigure result = new CustomShapeCompartmentFigure(getCompartmentName(), getMapMode()); return result; } @Override protected void handleNotificationEvent(Notification notification) { // TODO Auto-generated method stub super.handleNotificationEvent(notification); refreshVisuals(); } @Override protected void refreshVisuals() { // TODO Auto-generated method stub super.refreshVisuals(); View stateView = (View)((View)getModel()).eContainer(); State state = (State)stateView.getElement(); ((CustomShapeCompartmentFigure)getFigure()).setToolTip(state.getName()); } }