Sha256: c06b5f1b05312b7d81a333ce9136ba3723f98b807890e94cf1ba723c28916aae
Contents?: true
Size: 1.32 KB
Versions: 3
Compression:
Stored size: 1.32 KB
Contents
_.def("Luca.tools.CoffeeEditor").extends("Luca.tools.CodeMirrorField").with name : "coffeescript_editor" compileOptions: bare: true hooks:[ "editor:change" ] initialize: (@options)-> Luca.tools.CodeMirrorField::initialize.apply(@, arguments) _.bindAll(@, "editorChange") editor = @ @state = new Luca.Model currentMode: "coffeescript" coffeescript:"" javascript:"" @state.bind "change:coffeescript", (model)-> editor.trigger("change:coffeescript") code = model.get("coffeescript") editor.compile code, (compiled)-> model.set('javascript',compiled) @state.bind "change:javascript", (model)-> editor.onJavascriptChange?.call(editor, model.get('javascript') ) compile: (code, callback)-> response = {} code ||= @getValue() try compiled = CoffeeScript.compile(code, @compileOptions) callback?.call(@, compiled) response = success: true compiled: compiled catch error @trigger("compile:error", error, code) response = success: false compiled: '' message: error.message currentMode: ()-> @state.get("currentMode") fixTabs: ()-> value = @getValue(false) debugger editorChange: ()-> @fixTabs() @state.set( @currentMode(), @getValue() )
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
luca-0.9.2 | src/tools/coffee_script_editor.coffee |
luca-0.9.1 | src/tools/coffee_script_editor.coffee |
luca-0.9.0 | src/tools/coffee_script_editor.coffee |