aboutsummaryrefslogtreecommitdiff
path: root/site/app/twist/twist.js
diff options
context:
space:
mode:
authorRichard <q@1bpm.net>2025-04-16 01:04:34 +0100
committerRichard <q@1bpm.net>2025-04-16 01:04:34 +0100
commitbda3a99797df33f8bff48960318b14a0d81c52a3 (patch)
treeef28024823751abd4cbcb73093bb18b338628161 /site/app/twist/twist.js
parent9fbf91db06a6d4f4b5cd8bb45389a731bb86bf22 (diff)
downloadapps.csound.1bpm.net-bda3a99797df33f8bff48960318b14a0d81c52a3.tar.gz
apps.csound.1bpm.net-bda3a99797df33f8bff48960318b14a0d81c52a3.tar.bz2
apps.csound.1bpm.net-bda3a99797df33f8bff48960318b14a0d81c52a3.zip
remove .pyc filesHEADmaster
Diffstat (limited to 'site/app/twist/twist.js')
-rw-r--r--site/app/twist/twist.js30
1 files changed, 29 insertions, 1 deletions
diff --git a/site/app/twist/twist.js b/site/app/twist/twist.js
index a7a248c..515235c 100644
--- a/site/app/twist/twist.js
+++ b/site/app/twist/twist.js
@@ -108,7 +108,7 @@ var Twist = function() {
};
}
- twist.version = 1;
+ twist.version = 1.1;
this.currentTransform = null;
var errorState;
var instanceIndex = 0;
@@ -967,6 +967,34 @@ var Twist = function() {
app.insertScore("twst_getbuffers", [0, 1, cbid]);
};
+ this.loadFileFromURL = async function(url, name, onComplete) {
+ if (!name) name = url.split("/").reverse()[0];
+ await app.copyUrlToLocal(url, name);
+ var cbid = app.createCallback(async function(ndata){
+ twirl.loading.hide();
+ if (ndata.status > 0) {
+ if (waveformTabs.length == 0) {
+ self.createNewInstance(true);
+ instanceIndex = 0;
+ }
+ self.waveformTab.text(name);
+ await globalCallbackHandler(ndata);
+ waveformFiles[instanceIndex] = name;
+ waveformLoaded[instanceIndex] = true;
+ } else if (ndata.status == -1) {
+ twirl.prompt.show("File not valid");
+ } else if (ndata.status == -2) {
+ twirl.prompt.show("File too large");
+ } else {
+ twirl.prompt.show("File loading error");
+ }
+ if (onComplete) {
+ onComplete(ndata);
+ }
+ });
+ app.insertScore("twst_loadfile", [0, 1, name]);
+ };
+
this.loadFileFromClipboard = function() {
if (!twist.hasClipboard) {
return twirl.prompt.show("Cannot create: clipboard is empty");