A Gain node now draws a small device in the graph, as the Compressor
does since #380: the brushed plate in orange, 160x220 graph units, with
one chrome knob between its inputs and its output.
- GainPanel and GainFace join the node faces. The knob drags, resets
on a double-click and keeps the wheel for the graph (#383). Each turn
is one undo step, a linked Gain (dB) greys it.
- The knob turns with a taper of 0.26, so 0 dB stands straight up and
the range below -24 dB takes a fifth of the turn.
- drawPlate, engrave and the brushed look move out of CompressorPanel
so both devices share them. The Knob takes an arc colour, because
the orange arc vanished on the orange plate.
- No meter and no tap. Gain sits in every voice of an instrument, and
a tap would add two audio nodes to each note for a display nobody
asked for.
Found on the way:
- Knob.dialGlobal added half the dial unscaled. In a zoomed graph it
pointed beside the dial. The Compressor's e2e only hit by luck.
Tests:
- Unit: 2 new for the Gain plate and its taper.
- e2e 34 on atx: ALL PASSED, 126 checks (1 new).
- Gate on atx: CHECK EXIT 0, 283 files, 4359 tests.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>