diff options
| author | Julie Lala <jules@okfoc.us> | 2014-12-20 22:29:09 -0500 |
|---|---|---|
| committer | Julie Lala <jules@okfoc.us> | 2014-12-20 22:29:09 -0500 |
| commit | f6cd4aac9a8ea96df0c41618c3a83a0c8097acc4 (patch) | |
| tree | 1937c4d01732247c985c7856104d637ac30ab4a9 /js/ui | |
| parent | 6946255bb23b50e841a6684dc8950797d2a5dce6 (diff) | |
making more things textareas
Diffstat (limited to 'js/ui')
| -rw-r--r-- | js/ui/brush.js | 4 | ||||
| -rw-r--r-- | js/ui/controls.js | 66 |
2 files changed, 50 insertions, 20 deletions
diff --git a/js/ui/brush.js b/js/ui/brush.js index 50f6e07..9bc80a5 100644 --- a/js/ui/brush.js +++ b/js/ui/brush.js @@ -73,6 +73,10 @@ var brush = (function(){ brush.bg = 1 brush.opacity = 1 + brush.draw_fg = true + brush.draw_bg = true + brush.draw_char = true + return brush })()
\ No newline at end of file diff --git a/js/ui/controls.js b/js/ui/controls.js index 81403db..6f0fb91 100644 --- a/js/ui/controls.js +++ b/js/ui/controls.js @@ -1,7 +1,7 @@ var controls = (function(){ var controls = {} - + controls.circle = new Tool (circle_el) controls.circle.use = function(){ brush.generate = controls.circle.generate @@ -69,15 +69,18 @@ var controls = (function(){ canvas.clear() } - controls.grid = new Tool (grid_el) + controls.grid = new Checkbox (grid_el) controls.grid.use = function(){ document.body.classList.toggle('grid') + this.update( document.body.classList.contains("grid") ) } controls.grid.show = function(){ document.body.classList.add('grid') + this.update( true ) } controls.grid.hide = function(){ document.body.classList.remove('grid') + this.update( false ) } ClipboardTool = Tool.extend({ @@ -86,43 +89,63 @@ var controls = (function(){ clipboard.hide() } }) + controls.save = new ClipboardTool (save_el) + controls.save.use = function(){ + clipboard.show() + clipboard.export_mode() + } + controls.load = new ClipboardTool (load_el) + controls.load.use = function(){ + clipboard.show() + clipboard.import_mode() + } + + // + ShaderTool = Tool.extend({ use: function(){ - shader_textarea.style.display = "block" + shader_rapper.style.display = "block" shader_textarea.focus() }, blur: function(){ this.__blur() - shader_textarea.style.display = "none" + shader_rapper.style.display = "none" } }) - controls.shader = new ShaderTool (shader_el) - shader_textarea.value = demo_shader.innerHTML shader_textarea.addEventListener("input", function(){ var fn = shader.build(shader_textarea.value) fn && shader.run(canvas) }) + controls.animate = new Checkbox (animate_checkbox) + controls.animate.use = function(state){ + var state = shader.toggle() + this.update(state) + } + + // - controls.save = new ClipboardTool (save_el) - controls.save.use = function(){ - clipboard.show() - clipboard.export_mode() + controls.fg = new Checkbox (fg_checkbox) + controls.fg.use = function(state){ + brush.draw_fg = state || ! brush.draw_fg + this.update(brush.draw_fg) } - controls.load = new ClipboardTool (load_el) - controls.load.use = function(){ - clipboard.show() - clipboard.import_mode() + + controls.bg = new Checkbox (bg_checkbox) + controls.bg.use = function(state){ + brush.draw_bg = state || ! brush.draw_bg + this.update(brush.draw_bg) } - - controls.animate = new Tool (animate_checkbox) - controls.animate.use = function(){ - var state = shader.toggle() - if (state) this.el.innerHTML = "x animate" - else this.el.innerHTML = "_ animate" + + controls.char = new Checkbox (char_checkbox) + controls.char.use = function(state){ + brush.draw_char = state || ! brush.draw_char + this.update(brush.draw_char) } + // + controls.width = new Lex (width_el) controls.height = new Lex (height_el) controls.canvas_width = new Lex (canvas_width_el) @@ -150,6 +173,9 @@ var controls = (function(){ controls.select, controls.clear, controls.grid, + controls.fg, + controls.bg, + controls.char, controls.shader, controls.animate, controls.save, |
