public void RotateSelection(bool rotateLeft) { _selectedObjects.ToList().ForEach(o => { if (o.CanBeRotated) { if (rotateLeft) { RotateTool.RotateLeft(o); } else { RotateTool.RotateRight(o); } } }); }
private void Awake() { Instance = this; if (GridCellPrefab == null) { Debug.LogFormat("{0} | No GridCellPrefab assigned!", this); return; } _rectTransform = GetComponent <RectTransform>(); _gridLayoutGroup = GetComponent <GridLayoutGroup>(); InitializeGrid(); // Init editor tools MoveTool.Init(this); RotateTool.Init(this); }
static ToolManager() { MoveTool = new MoveTool(); SelectTool = new SelectTool(); ScaleTool = new ScaleTool(); RotateTool = new RotateTool(); SelectionService.Service.SelectionChanged.Event += () => { ContextActionService.SetState("selectionEmpty", SelectionService.SelectionCount == 0); }; ContextActionService.Register("tools.selectTool", () => SelectTool.IsEquipped = true); ContextActionService.Register("tools.moveTool", () => MoveTool.IsEquipped = true); ContextActionService.Register("tools.scaleTool", () => ScaleTool.IsEquipped = true); ContextActionService.Register("tools.rotateTool", () => RotateTool.IsEquipped = true); ContextActionService.Register("pickerInsideModels", PickerInsideModels); ContextActionService.Register("groupSelection", GroupSelection); ContextActionService.Register("ungroupSelection", UngroupSelection); }
public void SwitchTool(ToolType toolType) { if (toolType != ToolType.Move && ToolWhileMoveTool != null && ToolWhileMoveTool.GetToolType() == toolType) { ToolCurrent = ToolWhileMoveTool; ToolWhileMoveTool = null; return; } ToolWhileMoveTool = null; if (ToolCurrent != null) { ToolCurrent.ResetUsedElements(); } switch (toolType) { case ToolType.Brush: ToolCurrent = new BrushTool(); break; case ToolType.Crop: ToolCurrent = new CropTool(); break; case ToolType.Cursor: ToolCurrent = new CursorTool(); break; case ToolType.Fill: ToolCurrent = new FillTool(); break; case ToolType.Ellipse: ToolCurrent = new EllipseTool(); break; case ToolType.Eraser: ToolCurrent = new EraserTool(); break; case ToolType.ImportPng: ToolCurrent = new ImportTool(); break; case ToolType.Flip: ToolCurrent = new FlipTool(); break; case ToolType.Line: ToolCurrent = new LineTool(); break; case ToolType.Zoom: ToolCurrent = new MoveZoomTool(); break; case ToolType.Move: ToolWhileMoveTool = ToolCurrent; ToolCurrent = new MoveZoomTool(false); break; case ToolType.Pipette: ToolCurrent = new PipetteTool(); break; case ToolType.Rotate: ToolCurrent = new RotateTool(); break; case ToolType.Rect: ToolCurrent = new RectangleTool(); break; case ToolType.Stamp: ToolCurrent = new StampTool(); break; default: break; } }