mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 20:37:33 +00:00
c249b46b17a7bd73aa6674ef83cd5a7562dfcb90
SetCenter was a Phase-1 skeleton; filled it with the CTUN view-scroll logic: set FCenterFreq, shift the demodulator by (active VFO - center), push a full HP frame, and emit Changed(rfCenterFreq). The UI renders via OnControllerState (invalidate ruler cache + deferred spectrum redraw, since a drag emits many events). Both entry points now call FController.SetCenter: the desktop CTUN drag (DoSpectrumDrag) and the web center scroll (SyncWebCenter). Removes the duplicated inline shift/network logic from both. Side effect / latent fix: the web center scroll previously only called UpdateState without SendFullHP (the desktop path did both), so a web scroll did not push the new DDC center to the radio immediately. Routing it through PushNetworkState now sends the full HP frame like the desktop path. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Languages
Pascal
96.4%
Python
2.9%
Shell
0.6%