Esempio n. 1
0
 public void RotateSelection(bool rotateLeft)
 {
     _selectedObjects.ToList().ForEach(o =>
     {
         if (o.CanBeRotated)
         {
             if (rotateLeft)
             {
                 RotateTool.RotateLeft(o);
             }
             else
             {
                 RotateTool.RotateRight(o);
             }
         }
     });
 }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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;
            }
        }