Skip to content

Commit

Permalink
added load field to demo page
Browse files Browse the repository at this point in the history
  • Loading branch information
egonelbre committed Feb 7, 2011
1 parent d6abf87 commit 61ebcf3
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 11 deletions.
20 changes: 9 additions & 11 deletions demo/index.html
Expand Up @@ -78,6 +78,11 @@
font-family:monospace;
border: 1px #000 dashed;
}

#libload {
width: 390px;
margin-bottom : 10px;
}
</style>
</head>

Expand All @@ -99,6 +104,9 @@ <h1>jsfx</h1>
<button onclick="jsfxgui.paramsToLibrary()">To Library</button>
</div>
</div>

<input type="text" id="libload" value='["noise",0.0000,0.4000,0.0000,0.0060,0.0000,0.1220,20.0000,460.0000,2400.0000,-0.5240,0.0000,0.0000,0.0100,0.0003,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.9990,0.0000,0.0000,0.0000,0.0000]'></input><button onclick="jsfxgui.paramsFromField()">Load</button><br />

<div id="config-panel">
</div>
</div>
Expand Down Expand Up @@ -128,17 +136,7 @@ <h3>Log</h3>
jsfxgui.createConfigurationPanel("config-panel");
jsfxgui.initLogging("log");
jsfxgui.initLibrary("library");

/*
example how to use the library params:
audioLibParams = {
test : ["saw",0.0000,0.4000,0.5810,0.2640,2.1270,1.1900,875.0000,1163.0000,1205.0000,-0.6380,-0.1400,0.4500,39.4098,-0.2974,-0.3820,-0.7060,0.6830,0.3275,-0.2620,0.2680,-0.0880,0.2260,0.5490,-0.7460,0.8450,0.7930,0.1700]
};
audioLib = jsfxlib.createWaves(audioLibParams);
audioLib.test.play();
*/
jsfxgui.initField("libload");
</script>
</body>
</html>
29 changes: 29 additions & 0 deletions lib/jsfxgui.js
Expand Up @@ -375,6 +375,9 @@ var jsfxgui = {};
var stop = millis();
log("generate: " + (stop - start) + "ms");
wave.play();

this.paramsToField();

return wave;
};

Expand Down Expand Up @@ -408,4 +411,30 @@ var jsfxgui = {};
libDiv.innerHTML += '['+ arr.toString() + ']' + "<br />";
}

this.initField = function(id){
fldDiv = document.getElementById(id);
}

this.paramsToField = function(){
if (fldDiv === undefined) return;
var p = this.getParams(),
arr = jsfxlib.paramsToArray(p),
len = arr.length;
for(var i = 0; i < len; i++)
if(typeof(arr[i]) === "number")
arr[i] = arr[i].toFixed(4);
else if(typeof(arr[i]) === "string")
arr[i] = '"' + arr[i] + '"';
fldDiv.value = '['+ arr.toString() + ']';
}

this.paramsFromField = function(){
if (fldDiv === undefined) return;
var str = fldDiv.value,
arr = str.replace(/\[|\]|\"/g,"").split(","),
params = jsfxlib.arrayToParams(arr);
this.setParams(params);
this.play();
}

}).apply(jsfxgui);

0 comments on commit 61ebcf3

Please sign in to comment.