function (event) { function magic () { if (event.data.magicHasHappened) { $('#pedalboard-dashboard').css({ 'background': "#111 url(/img/background.jpg) repeat", }); } else { $('#pedalboard-dashboard').css({ 'background': "#111 url(/resources/tilesf1.jpg?uri=http%3A//distrho.sf.net/examples/Info) repeat", }); } event.data.magicHasHappened = !event.data.magicHasHappened; } function handle_event (symbol, value) { switch (symbol) { case 'time_playing': case 'time_validbbt': value = value > 0.5 ? "Yes" : "No"; break; case 'time_beatsperminute': value = value.toFixed(2); break; case 'time_frame': { var time = value / SAMPLERATE; var secs = time % 60; var mins = (time / 60) % 60; var hrs = (time / 3600) % 60; event.icon.find('[mod-role=time_frame_s]').text(sprintf("%02d:%02d:%02d", hrs, mins, secs)); // fall-through } default: value = value.toFixed(); break; } event.icon.find('[mod-role='+symbol+']').text(value); } if (event.type == 'start') { var ports = event.ports; for (var p in ports) { if (ports[p].symbol[0] == ":") { continue; } handle_event (ports[p].symbol, ports[p].value); } // special cases event.icon.find ('[mod-role=sample_rate]').text(SAMPLERATE); event.icon.find ('.mod-magic').click(magic); } else if (event.type == 'change') { handle_event (event.symbol, event.value); } }