docs(s-view): spec the r11 Sample-face recomposition (knob deck, curve popup, full-width hero) for Wave B
Adds S-VIEW-11/12/13 to PLAN, r11 addendum, and forks R11-F1 (window default height) + R11-F2 (Zone-panel knob parity) for Daniel.
This commit is contained in:
@@ -7,7 +7,13 @@ the **product framing behind a scoped phase**. Its build roadmap lives in **PLAN
|
||||
*why* (the plugin-format reasoning, the bare-VST3-vs-JUCE assessment, the settled
|
||||
decision record).
|
||||
|
||||
Status: framed by product-designer (2026-07-26), **revised 2026-07-27 (r9)**. r9 records the
|
||||
Status: framed by product-designer (2026-07-26), **revised 2026-07-27 (r11)**. r11 records the
|
||||
**Sample-face recomposition** (Daniel's post-landing DAW pass, 2026-07-27): all linear sliders →
|
||||
grouped radial knobs, compact mode toggles, the inline velocity-curve box → a preview button +
|
||||
popup editor with right-click node delete, and the hero waveform full-width — the layout spec for
|
||||
the Wave B editor rebuild. Two new forks open (R11-F1 hero height/default window, R11-F2
|
||||
Zone-panel parity); all r9/r10 forks — including S-VIEW-F3 — are settled and landed. See the r11
|
||||
Addendum in §4. r9 records the
|
||||
**three-view editor redesign** (Sample / Browse / Zone) and its follow-up settlements: the
|
||||
S-VIEW-F1 and S-VIEW-F2 forks are now **SETTLED** (2026-07-27) — **preview velocity persists** via
|
||||
the instrument's own VST3 component state (envelope bump to v6, *not* the extension's project
|
||||
@@ -1217,6 +1223,69 @@ Addendum is the *why*; those are the *what/how*.
|
||||
|
||||
---
|
||||
|
||||
### Addendum — Sample-face recomposition: knob deck, curve popup, full-width hero (Daniel, 2026-07-27, r11)
|
||||
|
||||
**Framing.** S-VIEW-1..10 landed and Daniel DAW-tested the three-view editor. The verdict on the
|
||||
*model* is good (Sample-as-home holds); the verdict on the *composition* is not: a 12-row stack of
|
||||
full-width horizontal sliders and full-width two-segment toggles reads as a settings form, not an
|
||||
instrument. r11 recomposes the Sample face into the hardware-sampler grammar the references
|
||||
(Simpler, Phase Plant, and every hardware groovebox) actually use — **a big waveform and a deck of
|
||||
small labelled knobs in functional clusters** — and drives the **Wave B editor rebuild**.
|
||||
|
||||
**Directives (Daniel, 2026-07-27, relayed):**
|
||||
- **Radial knobs (issue 4).** All the linear sliders become smaller radial knobs — minimal arc
|
||||
(~6→4 o'clock), needle indicator, vertical drag. The knob *primitive* is being built on its own
|
||||
track; r11 specs the layout that consumes it. Group the controls "in a reasonable way," and
|
||||
**group the envelope controls together intuitively** as a unit.
|
||||
- **Mode toggles (issue 4).** The pitch-engine and Gate/Trigger toggles must **not** be
|
||||
full-width — size and place them sensibly within the grouped composition.
|
||||
- **Velocity curve as button + popup (issue 3d).** Replace the inline curve box with a **small
|
||||
square preview button** (the curve drawn on it in miniature) **to the right of the
|
||||
preview-velocity control**; clicking it opens a **popup** hosting the full-size curve editor.
|
||||
This frees the **waveform preview to become full-width**.
|
||||
- **Right-click delete (issue 3c).** In the popup curve editor, right-click removes a control
|
||||
point.
|
||||
|
||||
**The composition calls (r11).**
|
||||
|
||||
1. **Three fenced knob groups: AMP ENVELOPE / PITCH / PITCH ENV.** The grouping follows the
|
||||
parameter taxonomy the engine already has, not an invented one. AMP ENVELOPE hosts the
|
||||
Gate|Trigger toggle in its caption row (the toggle *selects the envelope shape*, so it heads
|
||||
the envelope group — that is the "envelope controls as a unit" directive made structural) over
|
||||
the AHDSR knobs (Gate) or Fade In · Length % · Fade Out (Trigger, reordered to time order).
|
||||
PITCH hosts the Varisp|Preserve toggle + the Key Track knob (key tracking is repitch math — it
|
||||
lives with the engine that applies it). PITCH ENV is its own small envelope unit (Off|On
|
||||
caption toggle + P.Attack/P.Decay/P.Depth), mirroring AMP ENVELOPE's grammar.
|
||||
2. **Toggles live in the group caption rows.** Compact two-segment toggles (Mono/Stereo-sized)
|
||||
right-anchored in each group's micro-caps caption row — not-full-width, and *placed where they
|
||||
explain themselves* (each toggle captions the knobs it reconfigures).
|
||||
3. **The hero inverts from fixed to elastic.** Collapsing ~312px of slider rows into a ~92px deck
|
||||
makes the control surface the fixed band and the full-width waveform the elastic one — the
|
||||
Simpler/Phase-Plant proportion. Fork **R11-F1** (Daniel): keep the 840×620 default (hero
|
||||
~430px, waveform-dominant — the lean) or shrink the default to ~840×520.
|
||||
4. **Popup over inline for the velocity curve.** The inline box bought a permanently visible
|
||||
editor at the cost of 168px of hero width for a control most sessions touch once. The
|
||||
mini-button keeps the curve *visible* (live miniature, glanceable) while the popup gives the
|
||||
*editor* more room than the inline box ever had. All landed interactions carry over; right-click
|
||||
becomes the primary node-delete, with Alt-click and drag-off kept as alternates — nothing
|
||||
dropped.
|
||||
5. **One grammar on both surfaces (fork R11-F2, lean yes).** The Zone param panel should adopt the
|
||||
same knob deck + button/popup — Sample and Zone already edit one storage site (S15-F2); the lean
|
||||
is that they should speak one control grammar too. Daniel's call (it grows Wave B scope).
|
||||
|
||||
**What does NOT change (guardrails).** Zero engine/state/persistence change — this is a view
|
||||
recomposition of *existing* controls; no new params, no component-state bump, VST3 class UID
|
||||
unchanged. All drawing through the L1 kit by palette role; all layout/hit-test in new pure modules
|
||||
(`knob_deck`, `curve_popup` — mirrors of `action_bar`/`overflow_menu`); the knobs and the hero's
|
||||
envelope nodes remain two surfaces on one param model (S-VIEW-F2's structural sync, untouched).
|
||||
The full inventory contract (every landed element → its r11 home) is in the CONTEXT.md spec.
|
||||
|
||||
**Where the spec lives:** CONTEXT.md §Phase S — editor view-model redesign (S-VIEW) → "The
|
||||
Sample-face recomposition (r11)"; PLAN.md §Phase S — editor Wave B (S-VIEW-11/12/13 + forks
|
||||
R11-F1/R11-F2). This Addendum is the *why*; those are the *what/how*.
|
||||
|
||||
---
|
||||
|
||||
## Where this landed
|
||||
|
||||
With D1/D5/D6 locked and **D-A..D-D all settled (2026-07-26)**, the instrument is scoped
|
||||
|
||||
Reference in New Issue
Block a user