diff --git a/src/App.js b/src/App.js index 8c325f5..d6c4d9d 100644 --- a/src/App.js +++ b/src/App.js @@ -11,7 +11,7 @@ let lastPositions = [] let strokeWidth = 5 let lastMouse = 0 let eraserColor = "rgb(255, 255, 255)" -let lastStrokeWidthPencil = 5, lastStrokeWidthEraser = 5, lastStrokeWidthRect = 5, lastStrokeWidthCircle = 5 +let lastStrokeWidthPencil = 5, lastStrokeWidthEraser = 5, lastStrokeWidthRect = 5, lastStrokeWidthCircle = 5, lastStrokeWidthLine = 5 let formAnchor = null; @@ -111,6 +111,9 @@ export default function App() { setHintHeight(0) setDisplayHint(true) } + else if(selectedTool === "line") { + formAnchor = new Position(e.pageX, e.pageY) + } } function handleMouseUpCanvas(e) { @@ -135,6 +138,15 @@ export default function App() { context.fillStyle = eraserColor context.fillRect(formAnchor.x, formAnchor.y, e.pageX - formAnchor.x, e.pageY - formAnchor.y) } + else if(selectedTool === "line") { + context.strokeStyle = colorValue + context.beginPath() + context.lineWidth = strokeWidthSliderValue + context.moveTo(formAnchor.x, formAnchor.y) + context.lineTo(e.pageX, e.pageY) + context.stroke() + context.moveTo(0, 0) + } setDisplayHint(false) } @@ -203,6 +215,10 @@ export default function App() { setStrokeWidthSliderValue(lastStrokeWidthCircle) strokeWidth = lastStrokeWidthCircle } + else if (e.target.value === "line") { + setStrokeWidthSliderValue(lastStrokeWidthLine) + strokeWidth = lastStrokeWidthLine + } } return ( @@ -221,10 +237,12 @@ export default function App() {
- +

X

+
+ + + + { + handleToolChange(e) + }}/> +
+ +
+ + + + { + handleToolChange(e) + }}/> +
+