Import Prests from Bank

This commit is contained in:
Robin E. R. Davies
2025-09-20 07:27:51 -04:00
parent 9470699527
commit b25e90df7b
15 changed files with 1215 additions and 400 deletions
+12 -2
View File
@@ -2049,13 +2049,14 @@ export class PiPedalModel //implements PiPedalModel
}
saveCurrentPresetAs(newName: string, saveAfterInstanceId = -1): Promise<number> {
saveCurrentPresetAs(bankInstanceId: number, newName: string, saveAfterInstanceId = -1): Promise<number> {
// default behaviour is to save after the currently selected preset.
if (saveAfterInstanceId === -1) {
saveAfterInstanceId = this.presets.get().selectedInstanceId;
}
let request: any = {
clientId: this.clientId,
bankInstanceId: bankInstanceId,
name: newName,
saveAfterInstanceId: saveAfterInstanceId
@@ -2064,7 +2065,9 @@ export class PiPedalModel //implements PiPedalModel
return nullCast(this.webSocket)
.request<number>("saveCurrentPresetAs", request)
.then((newPresetId) => {
this.loadPreset(newPresetId);
if (bankInstanceId === this.banks.get().selectedBank) {
this.loadPreset(newPresetId);
}
return newPresetId;
});
}
@@ -3539,6 +3542,13 @@ export class PiPedalModel //implements PiPedalModel
this.webSocket?.send("setSelectedPedalboardPlugin", { clientId: this.clientId, pluginInstanceId: pluginId });
}
requestBankPresets(bankInstanceId: number): Promise<PresetIndexEntry[]> {
return nullCast(this.webSocket).request<PresetIndexEntry[]>("requestBankPresets", {bankInstanceId: bankInstanceId});
}
importPresetsFromBank(bankInstanceId: number, presets: number[]): Promise<number> {
return nullCast(this.webSocket).request<number>("importPresetsFromBank", {bankInstanceId: bankInstanceId, presets: presets});
}
};
let instance: PiPedalModel | undefined = undefined;