1 27 28 package org.nightlabs.editor2d.handle; 29 30 import java.util.Iterator ; 31 import java.util.List ; 32 33 import org.eclipse.draw2d.PositionConstants; 34 import org.eclipse.gef.GraphicalEditPart; 35 import org.eclipse.gef.Handle; 36 37 import org.nightlabs.editor2d.edit.AbstractDrawComponentEditPart; 38 39 public class RotateHandleKit 40 { 41 42 public RotateHandleKit() { 43 super(); 44 } 45 46 public static void addHandles(List selectedEditParts, List handles) 47 { 48 int counter = 0; 49 for (Iterator it = selectedEditParts.iterator(); it.hasNext(); ) { 50 GraphicalEditPart editPart = (GraphicalEditPart) it.next(); 51 if (editPart instanceof AbstractDrawComponentEditPart) 52 createRotateHandles((AbstractDrawComponentEditPart)editPart, handles); 53 } 54 55 handles.add(createRotateCenterHandle(selectedEditParts)); 56 } 57 58 protected static Handle createRotateCenterHandle(List editParts) 59 { 60 RotateCenterHandle handle = new RotateCenterHandle(editParts); 61 return handle; 62 } 63 64 protected static void createRotateHandles(AbstractDrawComponentEditPart owner, List handles) 66 { 67 handles.add(createRotateHandle(owner, PositionConstants.NORTH_WEST)); 68 handles.add(createRotateHandle(owner, PositionConstants.NORTH_EAST)); 69 handles.add(createRotateHandle(owner, PositionConstants.SOUTH_EAST)); 70 handles.add(createRotateHandle(owner, PositionConstants.SOUTH_WEST)); 71 72 74 } 79 80 protected static Handle createRotateHandle(AbstractDrawComponentEditPart owner, int direction) 81 { 82 RotateHandle handle = new RotateHandle(owner, direction); 83 return handle; 84 } 85 86 protected static Handle createShearHandle(AbstractDrawComponentEditPart owner, int direction) 87 { 88 ShearHandle handle = new ShearHandle(owner, direction); 89 return handle; 90 } 91 } 92 | Popular Tags |