Docs: reflect Phase D5 landing; close out Phase D

Archive D5 (mode switch) to COMPLETED.md and remove the completed Phase D
section from PLAN.md; add mode_switch to CLAUDE.md architecture + targets.
This commit is contained in:
2026-07-23 12:47:13 -04:00
parent 4700415fb6
commit 43ca5e4069
3 changed files with 25 additions and 33 deletions
+22
View File
@@ -239,6 +239,28 @@ toggle + mode-jumps MIDI-bindable; tag/untag acts on the current track selection
---
## D5 — in-window toggle affordance (UI)
**Goal:** The segmented mode switch in the ReaSampler / bank_panel window header.
CONTEXT.md §Design View (UI). **Verify (in DAW):** Segmented control shows current
mode (lit segment), one click flips modes via the D4 toggle action, per-mode
membership count visible, offlined-FX caveat surfaced as a tooltip.
- [x] Segmented mode switch `[ Arrange | Design ]` in the window header; active lit.
- [x] Wire the switch to the toggle/activate actions from D4.
- [x] Per-mode membership count display.
- [x] Offlined-FX re-init caveat as a tooltip on the switch.
**Notes/decisions:**
- New PURE module `src/mode_switch.{h,cpp}` — REAPER-free layout math for the
Design View mode switch: divides a header rectangle into N equal segments (one per
registered mode) and hit-tests a point to a segment. Unit-tested via a new
`mode_switch_tests` CTest target. Mirror of `bank_grid`.
- `src/bank_panel.cpp` — segmented `[ Arrange | Design ]` control drawn in the panel
header (one lit segment per registered mode, click activates that mode via
`view::applyMode`), with the grid offset below the header.
---
## Milestone 7 — capture action family
**Goal:** Bindable capture actions for master / selected tracks / selected items /
razor area, each with wet-dry + tail options. CONTEXT.md §actions, Build order 7.