public void TestSetCurrentState() { Assert.ThrowsException <ArgumentNullException>(() => _canvasDrawer.SetCurrentState(null)); var currentState = new CanvasDrawerPointerState(_canvasDrawer); _canvasDrawer.SetCurrentState(currentState); Assert.AreSame(_target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_CURRENT_STATE), currentState); }
/// <summary> /// Handles the canvas left mouse pressed. /// </summary> public void HandleCanvasLeftMousePressed(Point mousePosition) { if (_canvasDrawer.CurrentShapeDrawerType == ShapeDrawerType.None) { return; } _canvasDrawer.SetCurrentState(new CanvasDrawerDrawingState(_canvasDrawer, mousePosition)); }
/// <summary> /// Handles the canvas left mouse released. /// </summary> public void HandleCanvasLeftMouseReleased(Point mousePosition) { EndDrawing(mousePosition); _canvasDrawer.SetCurrentState(new CanvasDrawerPointerState(_canvasDrawer)); }
/// <summary> /// Goes the state of to resizing. /// </summary> private void GoToResizingState(ShapeDrawer selectedResizingShapeDrawer) { _canvasDrawer.SetCurrentState(new CanvasDrawerResizingState(_canvasDrawer, selectedResizingShapeDrawer)); _canvasDrawer.NotifyCurrentShapeChanged(); // Only notify after `CanvasDrawerResizingState` is completely created. }
/// <summary> /// Handles the canvas left mouse released. /// </summary> public void HandleCanvasLeftMouseReleased(Point mousePosition) { _canvasDrawer.CreateThenExecuteResizingCommand(_currentResizingShapeShapeDrawer, _currentResizingShapeOldDrawingEndingPoint, _currentResizingShapeShapeDrawer.DrawingEndingPoint); _canvasDrawer.SetCurrentState(new CanvasDrawerPointerState(_canvasDrawer)); _canvasDrawer.NotifyCurrentShapeChanged(); // Only notify after `CanvasDrawerPointerState` is completely created. }
/// <summary> /// Handles the canvas left mouse released. /// </summary> public void HandleCanvasLeftMouseReleased(Point mousePosition) { EndDrawing(mousePosition); _canvasDrawer.SetCurrentState(new CanvasDrawerPointerState(_canvasDrawer)); _canvasDrawer.NotifyCurrentShapeChanged(); // Only notify after `CanvasDrawerPointerState` is completely created. }