summaryrefslogtreecommitdiff
path: root/js/ui
diff options
context:
space:
mode:
authortimb <opuscule@gmail.com>2015-08-05 09:07:59 -0700
committertimb <opuscule@gmail.com>2015-08-05 09:07:59 -0700
commit74f6c10642889c52f001eb8f0495d14fb41db2ec (patch)
tree35f662a2e31856e23d8d0353bb6019dfc7ee92da /js/ui
parent2dfed6e2f39a3d94e702ff4c3fa4d4d69e13ef82 (diff)
add radio controls, add shader target, export format uses radio controls and is saved to local storage, move tool binding from control.js to tool.js
Diffstat (limited to 'js/ui')
-rw-r--r--js/ui/controls.js57
1 files changed, 23 insertions, 34 deletions
diff --git a/js/ui/controls.js b/js/ui/controls.js
index ca6770f..a21e293 100644
--- a/js/ui/controls.js
+++ b/js/ui/controls.js
@@ -129,7 +129,14 @@ var controls = (function(){
clipboard.show()
clipboard.import_mode()
}
-
+
+ controls.save_format = new RadioGroup(format_el)
+ controls.save_format.name = 'save_format'
+ controls.save_format.memorable = true
+ var cs = controls.save_format.controls
+ cs.mirc.use = cs.irssi.use = cs.ascii.use = function(){
+ clipboard.export_data()
+ }
//
var ShaderTool = FileTool.extend({
@@ -160,7 +167,13 @@ var controls = (function(){
// controls.shader.focus()
controls.shader.use(true)
}
-
+
+ controls.shader_target = new RadioGroup(shader_target_el)
+ var cs = controls.shader_target.controls
+ cs.canvas.use = function(){ shader.canvas = canvas }
+ cs.brush.use = function(){ shader.canvas = brush }
+ cs.selection.use = function(){ shader.canvas = selection.canvas }
+
controls.experimental_palette = new HiddenCheckbox (experimental_palette_toggle)
controls.experimental_palette.use = function(state){
var state = palette.experimental()
@@ -227,6 +240,14 @@ var controls = (function(){
// bind
controls.bind = function(){
+
+ for (var n in controls){
+ var control = controls[n]
+ if (typeof control === 'object' && 'bind' in control){
+ control.bind()
+ }
+ }
+
[
controls.brush_w,
controls.brush_h,
@@ -237,38 +258,6 @@ var controls = (function(){
lex.focus()
})
});
-
- [
- controls.square,
- controls.circle,
- controls.cross,
- controls.text,
- controls.fill,
- controls.select,
- controls.undo,
- controls.redo,
- controls.clear,
- controls.grid,
- controls.webcam,
- controls.fg,
- controls.bg,
- controls.char,
- controls.rotate,
- controls.vertical,
- controls.shader,
- controls.animate,
- controls.save,
- controls.load,
- controls.experimental_palette
- ].forEach(function(tool){
- tool.span.addEventListener('mousedown', function(e){
- tool.focus()
- })
- if (tool.memorable) {
- console.log(tool.name, localStorage.getItem("ascii.tools." + tool.name) )
- tool.use( localStorage.getItem("ascii.tools." + tool.name) == "true" )
- }
- })
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) })