Files
BT412/engine/MUNGA_L4
CydandClaude Fable 5 99ea3f07e9 Cockpit: on-screen vRIO button banks around the MFDs (clickable, lamp-lit)
Each MFD carries its 4+4 physical button strip and the radar its 6+6
amber side columns, exactly as mounted on the pod (RP412 MFDSplitView
geometry + the shared Tesla-board RIO addresses; anchors 0x2F/0x27/0x37/
0x0F/0x07 for the five MFDs, 0x10/0x18 for the radar).

- L4VB16.cpp: BTBuildCockpitButtons computes the button rects from the
  same cockpit surface layout (strips toward the screen interior to stay
  on-canvas); BTDrawCockpitButtons draws them as coloured quads, lit from
  PadRIO::GetLampState (bright red/amber) or dim; state-block wrapped so
  the button pass doesn't leak render state into the next world frame.
  BTCockpitButtonAt hit-tests; BTPadRIOScreenButton bridges to PadRIO.
- btl4main.cpp WndProc: WM_LBUTTONDOWN/UP hit-test the buttons and inject
  press/release into PadRIO (SetCapture so the release always fires).

Verified: the button banks render around all six surfaces in the
L4MFDSPLIT cockpit; mouse plumbing wired through the already-active
PadRIO screen-button path (Phase 2).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:46:57 -05:00
..