diff options
| author | Jules Laplace <jules@okfoc.us> | 2015-06-27 16:21:21 -0400 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2015-06-27 16:21:21 -0400 |
| commit | acc12af738380b292a01f83c889caa39a2fb84c8 (patch) | |
| tree | d32b4f7e335b64daa9d51b5710b812cfbf9f18ab | |
| parent | 819a959b73c3e9e35c6e4876373c0c51c3b9b9d5 (diff) | |
clone-stamp brush preserves brush mask
| -rw-r--r-- | js/blit.js | 4 | ||||
| -rw-r--r-- | js/ui/brush.js | 7 | ||||
| -rw-r--r-- | js/ui/canvas.js | 1 | ||||
| -rw-r--r-- | js/ui/controls.js | 17 |
4 files changed, 14 insertions, 15 deletions
@@ -78,6 +78,8 @@ var blit = (function(){ } }) } - + blit.square = function(A, lex){ + // i.e. no transparency + } return blit })() diff --git a/js/ui/brush.js b/js/ui/brush.js index d9f35ce..e1d140d 100644 --- a/js/ui/brush.js +++ b/js/ui/brush.js @@ -7,6 +7,13 @@ var brush = (function(){ }) brush.modified = false + + brush.mask = blit.circle + + brush.generate = function(){ + brush.fill(brush) + brush.mask(brush) + } brush.bind = function(){ diff --git a/js/ui/canvas.js b/js/ui/canvas.js index 1e66a5b..4822527 100644 --- a/js/ui/canvas.js +++ b/js/ui/canvas.js @@ -27,6 +27,7 @@ var canvas = current_canvas = (function(){ if (e.altKey) { if (e.shiftKey) { blit.copy_from(canvas, brush, floor(x-brush.w/2), floor(y-brush.h/2)) + brush.mask(brush) draw.set_last_point(e, point) } else { diff --git a/js/ui/controls.js b/js/ui/controls.js index c4c7f30..b5ed6b1 100644 --- a/js/ui/controls.js +++ b/js/ui/controls.js @@ -4,44 +4,33 @@ var controls = (function(){ controls.cross = new Tool (cross_el) controls.cross.use = function(){ - brush.generate = controls.cross.generate + brush.mask = blit.cross brush.generate() drawing = true brush.modified = false } - controls.cross.generate = function(){ - brush.fill(brush) - blit.cross(brush) - } controls.cross.done = function(){ drawing = false } controls.circle = new Tool (circle_el) controls.circle.use = function(){ - brush.generate = controls.circle.generate + brush.mask = blit.circle brush.generate() drawing = true brush.modified = false } - controls.circle.generate = function(){ - brush.fill(brush) - blit.circle(brush) - } controls.circle.done = function(){ drawing = false } controls.square = new Tool (square_el) controls.square.use = function(){ - brush.generate = controls.square.generate + brush.mask = blit.square brush.generate() brush.modified = false drawing = true } - controls.square.generate = function(){ - brush.fill(brush) - } controls.square.done = function(){ drawing = false } |
