summaryrefslogtreecommitdiff
path: root/js/ui/controls.js
diff options
context:
space:
mode:
authortimb <opuscule@gmail.com>2015-07-22 00:25:07 -0700
committertimb <opuscule@gmail.com>2015-07-22 00:25:07 -0700
commita76225dc7f8ec707fc2dc563a796c65620b1c5a4 (patch)
tree313932c110e782565224b9ae6be53f39a6325677 /js/ui/controls.js
parent1a009fd877364f5c6616a381d39e33902201a298 (diff)
finally hook up undo
Diffstat (limited to 'js/ui/controls.js')
-rw-r--r--js/ui/controls.js60
1 files changed, 36 insertions, 24 deletions
diff --git a/js/ui/controls.js b/js/ui/controls.js
index a0a7268..84a9d9b 100644
--- a/js/ui/controls.js
+++ b/js/ui/controls.js
@@ -4,7 +4,7 @@ var controls = (function(){
controls.cross = new Tool (cross_el)
controls.cross.use = function(){
- brush.mask = blit.cross
+ brush.mask = blit.cross
brush.generate()
drawing = true
brush.modified = false
@@ -15,7 +15,7 @@ var controls = (function(){
controls.circle = new Tool (circle_el)
controls.circle.use = function(){
- brush.mask = blit.circle
+ brush.mask = blit.circle
brush.generate()
drawing = true
brush.modified = false
@@ -26,7 +26,7 @@ var controls = (function(){
controls.square = new Tool (square_el)
controls.square.use = function(){
- brush.mask = blit.square
+ brush.mask = blit.square
brush.generate()
brush.modified = false
drawing = true
@@ -56,7 +56,17 @@ var controls = (function(){
filling = false
document.body.classList.remove("bucket")
}
-
+
+ controls.undo = new BlurredTool (undo_el)
+ controls.undo.use = function(){
+ undo.undo()
+ }
+
+ controls.redo = new BlurredTool (redo_el)
+ controls.redo.use = function(){
+ undo.redo()
+ }
+
controls.clear = new BlurredTool (clear_el)
controls.clear.use = function(){
if (confirm("really delete this colorcode?")) {
@@ -208,19 +218,19 @@ var controls = (function(){
//
- controls.width = new Lex (width_el)
- controls.height = new Lex (height_el)
- controls.canvas_width = new Lex (canvas_width_el)
- controls.canvas_height = new Lex (canvas_height_el)
+ controls.brush_w = new Lex (brush_w_el)
+ controls.brush_h = new Lex (brush_h_el)
+ controls.canvas_w = new Lex (canvas_w_el)
+ controls.canvas_h = new Lex (canvas_h_el)
// bind
controls.bind = function(){
[
- controls.width,
- controls.height,
- controls.canvas_width,
- controls.canvas_height
+ controls.brush_w,
+ controls.brush_h,
+ controls.canvas_w,
+ controls.canvas_h
].forEach(function(lex){
lex.span.addEventListener('mousedown', function(e){
lex.focus()
@@ -234,6 +244,8 @@ var controls = (function(){
controls.text,
controls.fill,
controls.select,
+ controls.undo,
+ controls.redo,
controls.clear,
controls.grid,
controls.webcam,
@@ -256,21 +268,21 @@ var controls = (function(){
tool.use( localStorage.getItem("ascii.tools." + tool.name) == "true" )
}
})
-
- controls.width.key = keys.single_numeral_key(controls.width, brush, "w", 1, 10)
- controls.width.raw_key = keys.arrow_key(controls.width, brush, "w", "rebuild", 1, 100)
- controls.height.key = keys.single_numeral_key(controls.height, brush, "h", 1, 10)
- controls.height.raw_key = keys.arrow_key(controls.height, brush, "h", "rebuild", 1, 100)
+ controls.brush_w.key = keys.single_numeral_key(controls.brush_w, function(w){ brush.resize(w, brush.h) })
+ controls.brush_w.raw_key = keys.arrow_key(function(w){ brush.size_add(w, 0) })
- controls.canvas_width.raw_key = keys.arrow_key(controls.canvas_width, canvas, "w", "resize", 1, 999)
- controls.canvas_width.key = keys.multi_numeral_key(controls.canvas_width, 3)
- controls.canvas_width.onBlur = keys.multi_numeral_blur(controls.canvas_width, canvas, "w", 1, 999)
+ controls.brush_h.key = keys.single_numeral_key(controls.brush_h, function(h){ brush.resize(brush.w, h) })
+ controls.brush_h.raw_key = keys.arrow_key(function(h){ brush.size_add(0, h) })
+
+ controls.canvas_w.key = keys.multi_numeral_key(controls.canvas_w, 3)
+ controls.canvas_w.onBlur = keys.multi_numeral_blur(controls.canvas_w, function(w){ canvas.resize(w, canvas.h) })
+ controls.canvas_w.raw_key = keys.arrow_key(function(w){ canvas.size_add(w, 0) })
- controls.canvas_height.raw_key = keys.arrow_key(controls.canvas_height, canvas, "h", "resize", 1, 999)
- controls.canvas_height.key = keys.multi_numeral_key(controls.canvas_height, 3)
- controls.canvas_height.onBlur = keys.multi_numeral_blur(controls.canvas_height, canvas, "h", 1, 999)
-
+ controls.canvas_h.key = keys.multi_numeral_key(controls.canvas_h, 3)
+ controls.canvas_h.onBlur = keys.multi_numeral_blur(controls.canvas_h, function(h){ canvas.resize(canvas.w, h) })
+ controls.canvas_h.raw_key = keys.arrow_key(function(h){ canvas.size_add(0, h) })
+
add_custom_el.addEventListener("click", function(){
custom.clone()
})