Beispiel #1
0
        public void SetInkingMode(InkingModes newInkingMode)
        {
            if (newInkingMode == InkingModes.None)
            {
                throw new InvalidOperationException(
                          "You can only set CurrentInkingMode to None by setting CurrentState to None or OnlyManipulating");
            }

            if (State != States.DrawingAndManipulating && State != States.OnlyDrawing)
            {
                throw new InvalidOperationException(
                          "You cannot change the CanvasMode in a non-drawing state (CurrentState : " + StateAsString + ") !");
            }

            switch (newInkingMode)
            {
            case InkingModes.Highlighter:
                EditingMode = InkCanvasEditingMode.InkAndGesture;
                break;

            case InkingModes.Pencil:
                EditingMode = InkCanvasEditingMode.InkAndGesture;
                break;

            case InkingModes.Pointer:
                EditingMode = InkCanvasEditingMode.InkAndGesture;
                break;

            case InkingModes.PointEraser:
                EditingMode = InkCanvasEditingMode.EraseByPoint;
                break;

            case InkingModes.StrokeEraser:
                EditingMode = InkCanvasEditingMode.EraseByStroke;
                break;

            case InkingModes.Selection:
                EditingMode = InkCanvasEditingMode.Select;
                break;
            }

            InkingMode = newInkingMode;
        }
Beispiel #2
0
 public LayerStackState(States state, InkingModes mode)
 {
     SetState(state);
     SetInkingMode(mode);
 }
Beispiel #3
0
        public void SetInkingMode(InkingModes newInkingMode)
        {
            if (newInkingMode == InkingModes.None)
            {
                throw new InvalidOperationException(
                    "You can only set CurrentInkingMode to None by setting CurrentState to None or OnlyManipulating");
            }

            if (State != States.DrawingAndManipulating && State != States.OnlyDrawing)
            {
                throw new InvalidOperationException(
                    "You cannot change the CanvasMode in a non-drawing state (CurrentState : " + StateAsString + ") !");
            }

            switch (newInkingMode)
            {
                case InkingModes.Highlighter:
                    EditingMode = InkCanvasEditingMode.InkAndGesture;
                    break;
                case InkingModes.Pencil:
                    EditingMode = InkCanvasEditingMode.InkAndGesture;
                    break;
                case InkingModes.Pointer:
                    EditingMode = InkCanvasEditingMode.InkAndGesture;
                    break;
                case InkingModes.PointEraser:
                    EditingMode = InkCanvasEditingMode.EraseByPoint;
                    break;
                case InkingModes.StrokeEraser:
                    EditingMode = InkCanvasEditingMode.EraseByStroke;
                    break;
                case InkingModes.Selection:
                    EditingMode = InkCanvasEditingMode.Select;
                    break;
            }

            InkingMode = newInkingMode;
        }
Beispiel #4
0
 public LayerStackState(States state, InkingModes mode)
 {
     SetState(state);
     SetInkingMode(mode);
 }