aboutsummaryrefslogtreecommitdiff
path: root/draw/app.js
diff options
context:
space:
mode:
authorMitja Felicijan <mitja.felicijan@gmail.com>2018-09-19 01:53:20 +0200
committerMitja Felicijan <mitja.felicijan@gmail.com>2018-09-19 01:53:20 +0200
commita217ba8ae93591c5f1881425e9a3f2d6842e92de (patch)
treebb29512626fc47ce492d14987099404766eae6f5 /draw/app.js
parent6a38bb139ba43e261f54808f9f72f5e44b4fce92 (diff)
downloadmitjafelicijan.com-a217ba8ae93591c5f1881425e9a3f2d6842e92de.tar.gz
content update
Diffstat (limited to 'draw/app.js')
-rw-r--r--draw/app.js66
1 files changed, 0 insertions, 66 deletions
diff --git a/draw/app.js b/draw/app.js
deleted file mode 100644
index d8b6ebf..0000000
--- a/draw/app.js
+++ /dev/null
@@ -1,66 +0,0 @@
1let paintStyle = getComputedStyle(document.querySelector('section'));
2let canvas = document.querySelector('canvas');
3let ctx = canvas.getContext('2d');
4
5canvas.width = parseInt(paintStyle.getPropertyValue('width'));
6canvas.height = parseInt(paintStyle.getPropertyValue('height'));
7
8var mouse = {
9 x: 0,
10 y: 0
11};
12
13ctx.lineWidth = 3;
14ctx.lineJoin = 'round';
15ctx.lineCap = 'round';
16ctx.strokeStyle = 'limegreen';
17
18canvas.addEventListener('mousemove', function(e) {
19 mouse.x = e.pageX - this.offsetLeft;
20 mouse.y = e.pageY - this.offsetTop;
21}, false);
22
23canvas.addEventListener('mousedown', function(e) {
24 ctx.beginPath();
25 ctx.moveTo(mouse.x, mouse.y);
26 canvas.addEventListener('mousemove', onPaint, false);
27}, false);
28
29canvas.addEventListener('mouseup', function() {
30 canvas.removeEventListener('mousemove', onPaint, false);
31}, false);
32
33var onPaint = function() {
34 ctx.lineCap = 'round';
35 ctx.lineTo(mouse.x, mouse.y);
36 ctx.stroke();
37};
38
39
40document.querySelectorAll('nav button').forEach(function(button, idx) {
41 button.addEventListener('click', function(evt) {
42 console.log(button.dataset.method);
43
44 switch (button.dataset.method) {
45 case 'color':
46 {
47 ctx.strokeStyle = button.dataset.value;
48 break;
49 }
50 case 'size':
51 {
52 ctx.lineWidth = parseInt(button.dataset.value);
53 break;
54 }
55 case 'clear':
56 {
57 let clear = confirm('Do you really want to clear canvas?');
58 if (clear) {
59 ctx.clearRect(0, 0, canvas.width, canvas.height);
60 }
61 break;
62 }
63 }
64 });
65
66});