diff options
| author | Jules Laplace <jules@okfoc.us> | 2014-11-22 11:44:05 -0500 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2014-11-22 11:44:05 -0500 |
| commit | dd8a053f9845d4adeb8540f24d1e8d46def35ad3 (patch) | |
| tree | d61188f3f87ddc3023709667a659f867506a5ead /js/app.js | |
| parent | 2464f6e5d4d190631efbb738e56d9c2c810f7ced (diff) | |
shader
Diffstat (limited to 'js/app.js')
| -rw-r--r-- | js/app.js | 20 |
1 files changed, 16 insertions, 4 deletions
@@ -24,12 +24,12 @@ function init () { function build () { canvas = new Matrix (cols, rows, function(x,y){ var lex = new Lex (x,y) - // - shader(lex, x, y) - // - lex.build() +// lex.build() return lex }) + shader.init() + shader.run(canvas) + brush = new Matrix (5, 5, function(x,y){ var lex = new Lex (x,y) lex.build() @@ -98,11 +98,17 @@ function build () { controls.shader = new Tool (shader_el) controls.shader.use = function(){ shader_textarea.style.display = "block" + setTimeout(function(){ shader_textarea.focus() }) } controls.shader.blur = function(){ Tool.prototype.blur.call(this) shader_textarea.style.display = "none" } + shader_textarea.value = demo_shader.innerHTML + shader_textarea.addEventListener("input", function(){ + var fn = shader.build(shader_textarea.value) + fn && shader.run(canvas) + }) controls.width = new Lex (width_el) controls.height = new Lex (height_el) @@ -194,6 +200,7 @@ function bind () { controls.canvas_width.build() canvas.w = n canvas.rebuild() + canvas.build() }) controls.canvas_height.key = int_key(function(n, keyCode){ controls.canvas_height.read() @@ -204,12 +211,17 @@ function bind () { controls.canvas_height.build() canvas.h = n canvas.rebuild() + canvas.build() }) window.addEventListener('keydown', function(e){ + if (current_tool.name == "shader") { + return + } if (! e.metaKey && ! e.ctrlKey && ! e.altKey) { e.preventDefault() } + // console.log(e.keyCode) switch (e.keyCode) { case 27: // esc |
