Add toggle to show/hide ARRL band plan overlay on panadapter
Labels: feature, GUI, spectrum, priority: low
Related: #59 (per-band panadapter display settings)
What
Add a user-accessible toggle to show or hide the ARRL band plan overlay
(the colour-coded CW/DATA/PHONE/license-class bands currently drawn on the
FFT spectrum). The setting should persist across sessions. When hidden, the
panadapter displays only the FFT spectrum, waterfall, slice markers, and filter
passband — no band plan colouring.
Why
The band plan overlay is useful for operators who are new to a band or who
want a visual reminder of mode/licence boundaries. However it is unwanted
clutter for experienced operators who know the band plan by memory and prefer
a clean, unobstructed view of the spectrum — particularly on crowded HF bands
where the overlay colours compete visually with signal peaks and the waterfall.
There is currently no way to turn it off short of modifying the source code.
Additionally:
- Operators outside the US/Canada follow different band plans (IARU Region
1/2/3, Ofcom, etc.) where the ARRL overlay is actively misleading about
permitted operating frequencies.
- Contest operators and DXers often want maximum spectrum real estate with
minimal overlays.
How Other Clients Do It
SmartSDR for Windows does not draw an ARRL band plan overlay on the
panadapter at all — the spectrum is clean by default. The band plan overlay
is an AetherSDR addition with no equivalent toggle.
SDR# (SDRSharp), HDSDR, and SDR Console all implement spectrum
overlays (band plans, amateur allocations) as optional layers with a dedicated
show/hide toggle in their display settings panels, defaulting to off.
Suggested Behavior
Toggle location
The most natural home is the PanadapterApplet (the display settings applet
already containing AVG, FPS, fill, gain, black level, DAX rate controls) as a
labelled checkbox or toggle button: "Band Plan".
A secondary access point via the spectrum right-click context menu
(SpectrumOverlayMenu) would also be appropriate for quick access without
opening the applet.
Persistence
Save the toggle state to AppSettings under key "ShowBandPlan", defaulting
to "True" on first launch to preserve current behaviour for existing users:
bool show = AppSettings::instance().value("ShowBandPlan", "True").toString() == "True";
Live update
Toggling the setting should trigger an immediate repaint of SpectrumWidget
with no reconnect or restart required.
Default
Default to on ("True") so existing users see no change in behaviour on
upgrade. New installs also default to on.
Protocol Hints
No protocol changes needed — the band plan overlay is entirely client-side,
drawn in SpectrumWidget's paint path from static ARRL frequency data. This
is a pure GUI and AppSettings persistence change.
Relevant source locations:
src/gui/SpectrumWidget — band plan overlay paint code; gate on
AppSettings value, expose a setShowBandPlan(bool) slot for live toggle
src/gui/PanadapterApplet — add "Band Plan" toggle checkbox/button
src/gui/SpectrumOverlayMenu — optional secondary toggle in right-click menu
src/core/AppSettings — persist "ShowBandPlan" key
Add toggle to show/hide ARRL band plan overlay on panadapter
Labels:
feature,GUI,spectrum,priority: lowRelated: #59 (per-band panadapter display settings)
What
Add a user-accessible toggle to show or hide the ARRL band plan overlay
(the colour-coded CW/DATA/PHONE/license-class bands currently drawn on the
FFT spectrum). The setting should persist across sessions. When hidden, the
panadapter displays only the FFT spectrum, waterfall, slice markers, and filter
passband — no band plan colouring.
Why
The band plan overlay is useful for operators who are new to a band or who
want a visual reminder of mode/licence boundaries. However it is unwanted
clutter for experienced operators who know the band plan by memory and prefer
a clean, unobstructed view of the spectrum — particularly on crowded HF bands
where the overlay colours compete visually with signal peaks and the waterfall.
There is currently no way to turn it off short of modifying the source code.
Additionally:
1/2/3, Ofcom, etc.) where the ARRL overlay is actively misleading about
permitted operating frequencies.
minimal overlays.
How Other Clients Do It
SmartSDR for Windows does not draw an ARRL band plan overlay on the
panadapter at all — the spectrum is clean by default. The band plan overlay
is an AetherSDR addition with no equivalent toggle.
SDR# (SDRSharp), HDSDR, and SDR Console all implement spectrum
overlays (band plans, amateur allocations) as optional layers with a dedicated
show/hide toggle in their display settings panels, defaulting to off.
Suggested Behavior
Toggle location
The most natural home is the PanadapterApplet (the display settings applet
already containing AVG, FPS, fill, gain, black level, DAX rate controls) as a
labelled checkbox or toggle button:
"Band Plan".A secondary access point via the spectrum right-click context menu
(
SpectrumOverlayMenu) would also be appropriate for quick access withoutopening the applet.
Persistence
Save the toggle state to
AppSettingsunder key"ShowBandPlan", defaultingto
"True"on first launch to preserve current behaviour for existing users:Live update
Toggling the setting should trigger an immediate repaint of
SpectrumWidgetwith no reconnect or restart required.
Default
Default to on (
"True") so existing users see no change in behaviour onupgrade. New installs also default to on.
Protocol Hints
No protocol changes needed — the band plan overlay is entirely client-side,
drawn in
SpectrumWidget's paint path from static ARRL frequency data. Thisis a pure GUI and
AppSettingspersistence change.Relevant source locations:
src/gui/SpectrumWidget— band plan overlay paint code; gate onAppSettingsvalue, expose asetShowBandPlan(bool)slot for live togglesrc/gui/PanadapterApplet— add"Band Plan"toggle checkbox/buttonsrc/gui/SpectrumOverlayMenu— optional secondary toggle in right-click menusrc/core/AppSettings— persist"ShowBandPlan"key