package org.eclipse.papyrus.uml.diagram.sequence.apex.edit.policies; import java.util.ArrayList; import java.util.List; import org.eclipse.draw2d.Border; import org.eclipse.draw2d.LineBorder; import org.eclipse.gef.editpolicies.NonResizableEditPolicy; import org.eclipse.gef.handles.AbstractHandle; /** * @author Jiho * * InteractionInteractionCompartmentEditPart의 drag를 막아놓은 EditPolicy */ public class ApexNonMovableEditPolicy extends NonResizableEditPolicy { public ApexNonMovableEditPolicy() { super(); setDragAllowed(false); } @Override protected List createSelectionHandles() { List list = new ArrayList(); createMoveHandle(list); // remove all drag handles for (int i = 0, size = list.size(); i < size; i++) { if (list.get(i) instanceof AbstractHandle) { AbstractHandle handle = (AbstractHandle)list.get(i); Border border = handle.getBorder(); if (border instanceof LineBorder) { ((LineBorder)border).setWidth(2); handle.setBorder(border); } } } return list; } }