var Tool = Model({ init: function (span) { this.el = span this.lex = new Lex (span) this.name = span.innerHTML this.span = span }, use: function(){}, focus: function(){ // focused && focused.blur() current_tool && current_tool.blur() current_tool = this this.span.classList.add('focused') this.use() if (this.name != 'shader') { cursor_input.focus() } }, blur: function(){ current_tool = null this.span.classList.remove('focused') } }) var Checkbox = Tool.extend({ })