diff options
Diffstat (limited to 'js/ui/palette.js')
| -rw-r--r-- | js/ui/palette.js | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/js/ui/palette.js b/js/ui/palette.js index e03e17b..7c2add3 100644 --- a/js/ui/palette.js +++ b/js/ui/palette.js @@ -1,8 +1,12 @@ var palette = (function(){ + var palette_index = localStorage.getItem("ascii.palette") || 0 + var palette_list = [all_hue, all_inv_hue, mirc_color, mirc_color_reverse] + var palette_fn = palette_list[palette_index] var palette = new Matrix (32, 2, function(x,y){ var lex = new Lex (x,y) - lex.bg = all_inv_hue(x>>1) + lex.bg = palette_fn(x>>1) + lex.opacity = 1 lex.build() return lex }) @@ -14,14 +18,22 @@ var palette = (function(){ lex.span.addEventListener('mousedown', function(e){ e.preventDefault() - dragging = true - erasing = e.which == "3" + if (e.shiftKey) { + palette_index = (palette_index+1) % palette_list.length + localStorage.setItem("ascii.palette", palette_index) + palette_fn = palette_list[palette_index] + palette.forEach(function(lex,x,y){ + lex.bg = palette_fn(x>>1) + lex.build() + }) + return + } brush.fg = lex.bg brush.bg = lex.bg if (! brush.modified) { brush.generate() } - if (filling) { + if (filling || e.ctrlKey) { fillColor = lex.bg } }) |
