// Generated by CoffeeScript 1.4.0 (function() { var BAR_H, PAD, bar_chart_g, bar_g, blur, focus, height, svg, width, __slice = [].slice; PAD = 20; BAR_H = 60; svg = d3.select('svg'); width = svg.node().getBoundingClientRect().width; height = svg.node().getBoundingClientRect().height; bar_g = svg.append('g').attr({ transform: "translate(" + PAD + "," + (height - BAR_H) + ")" }); bar.init(bar_g, width - 2 * PAD, BAR_H - PAD); bar_chart_g = svg.append('g').attr({ transform: "translate(" + PAD + "," + PAD + ")" }); bar_chart.init(bar_chart_g, width - 2 * PAD, height - BAR_H - 2 * PAD); model.dispatcher.on('statechange.bar', bar.update); model.dispatcher.on('statechange.bar_chart', bar_chart.update); model.init(); d3.select('body').on('keydown', function() { if (d3.event.keyCode === 39) { return model.add_datapoint(Math.ceil(Math.random() * 20)); } else if (d3.event.keyCode === 37) { return model.remove_datapoint(); } }); focus = function() { var args; args = 1 <= arguments.length ? __slice.call(arguments, 0) : []; bar_chart.focus.apply(bar_chart, args); return bar.focus.apply(bar, args); }; bar_chart.dispatcher.on('focus', focus); bar.dispatcher.on('focus', focus); blur = function() { var args; args = 1 <= arguments.length ? __slice.call(arguments, 0) : []; bar_chart.blur.apply(bar_chart, args); return bar.blur.apply(bar, args); }; bar_chart.dispatcher.on('blur', blur); bar.dispatcher.on('blur', blur); }).call(this);