Revert "Added an alternative GUI based on JUCE; I like FLTK more..."
This reverts commit cd2f87a8b3.
This commit is contained in:
parent
cd2f87a8b3
commit
d6e46f67d7
58 changed files with 10 additions and 11136 deletions
|
|
@ -3739,47 +3739,6 @@ Play/Stop/Space/stereo check also passed. See the integration-test guide for com
|
|||
|
||||
---
|
||||
|
||||
## Phase 113 — Optional JUCE workstation frontend
|
||||
|
||||
### Tasks and acceptance criteria
|
||||
|
||||
- [x] Preserve the FLTK sources and default build; add an independently optional
|
||||
`XTC_BUILD_JUCE_GUI` workstation under `src/gui/JUCE`.
|
||||
- [x] Require a user-supplied SDK through `XTC_JUCE_ROOT`, with an explicit error
|
||||
when enabled without the SDK and no SDK discovery/download in normal builds.
|
||||
- [x] Port the main window, sequencer/master and child views, graph, mixer,
|
||||
automation, piano roll, velocity editing, sample editor, plugin dialogs,
|
||||
insert chains, preferences, searchable commands and support widgets.
|
||||
- [x] Use JUCE components, controls, graphics, native events, dialogs and timers;
|
||||
keep project/history/DSP/backend/plugin APIs in C and preserve `.xtc` files.
|
||||
- [x] Allow JUCE-only, FLTK-only, both and core-only configurations; share the
|
||||
externally supplied SDK with the independently optional plugin examples.
|
||||
- [x] Include the JUCE binary in the owned install/uninstall inventory when selected.
|
||||
- [x] Pass the retained GUI regression workflows against JUCE, including failure
|
||||
rollback, child ownership, gestures, preferences and MIDI device fallback.
|
||||
- [x] Verify native JUCE transport events and finite stereo playback with the
|
||||
bundled test song and missing saved MIDI devices.
|
||||
- [x] Validate the original FLTK build/tests and document final build results.
|
||||
|
||||
### Implementation notes
|
||||
|
||||
The frontend retains the original C-facing command structure and filenames.
|
||||
`ui.*` maps the retained coordinates and callback conventions to JUCE, with no
|
||||
FLTK headers or runtime dependency. Native controls may look different. Both
|
||||
frontends continue to use the existing JACK/PipeWire backend. See the
|
||||
[frontend source and build guide](../src/gui/JUCE/README.md).
|
||||
JUCE is an optional external AGPLv3/commercial SDK; normal builds do not link it.
|
||||
Qualification is for Linux, rather than a new cross-platform audio backend.
|
||||
The original 57 FLTK/core tests, core-only build, missing-SDK diagnostic, shared
|
||||
SDK configuration and staged install/uninstall checks passed. The frontend was
|
||||
built with warnings enabled against external JUCE 8.0.15. Native Play/Stop/Space,
|
||||
expanded track rendering and finite stereo playback passed with missing saved
|
||||
MIDI devices. All 12 JUCE GUI workflows passed, with focused reruns after the
|
||||
native focus/blur adjustments. The [workstation capture](../screenshots/juce-workstation.png)
|
||||
comes from this real-backend regression, with no physical routes changed.
|
||||
|
||||
---
|
||||
|
||||
## Recommended Execution Order
|
||||
|
||||
Reorder the phases when the audit reveals a blocking dependency. Do not mark a
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue