Timed scene cues per track + persistent playlist/scenes

- Each playlist track holds a timeline of cues (@time → effect/text/image);
  cues fire automatically as the track plays, driven by progress reports.
- Playlist (tracks, hotkeys, cues) is saved to userData and restored on startup,
  like the pad bank.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
lucianoandClaude Opus 4.8 committed 2026-06-19 16:15:40 +02:00
1 parent 8925fa50f9
commit e0856866d2
4 files changed
+127 -41

No files matched your search

+8
View File
@@ -181,6 +181,14 @@ ipcMain.handle('pads:save', (_e, data) => {
try { fs.writeFileSync(padsFile(), JSON.stringify(data)); return true; } catch (e) { return false; }
});
const playlistFile = () => path.join(app.getPath('userData'), 'playlist.json');
ipcMain.handle('playlist:load', () => {
try { return JSON.parse(fs.readFileSync(playlistFile(), 'utf8')); } catch (e) { return null; }
});
ipcMain.handle('playlist:save', (_e, data) => {
try { fs.writeFileSync(playlistFile(), JSON.stringify(data)); return true; } catch (e) { return false; }
});
// Read the bundled svg/ folder and return each SVG as a data: URL.
ipcMain.handle('svg:listBuiltin', () => {
try {