Skip to content

Multiple panadapter support (stacked vertical display) #152

Description

@ten9876

Feature

Support multiple independent panadapters stacked vertically, matching SmartSDR's layout. Each panadapter has its own FFT + waterfall, VFO overlays, overlay menu, display settings, and can be on a different band/antenna.

Dual-SCU radios (FLEX-8600, 6600, 6700, AU-520) support up to 4 panadapters. Single-SCU radios support 2.

Implementation Plan

See plan file for detailed 8-phase approach:

Phase 1: PanadapterModel extraction — new class for per-pan state

Phase 2: PanadapterStream multi-routing — stream ID in signals

Phase 3: PanadapterStack layout — vertical QSplitter container

Phase 4: Signal rewiring — wirePanadapter() helper method

Phase 5: Slice-to-panadapter assignment — route overlays to correct pan

Phase 6: Multi-pan protocol — create/remove panadapters

Phase 7: Active pan coordination — applet panel context switching

Phase 8: Per-pan settings persistence — indexed AppSettings keys

New files

  • src/models/PanadapterModel.h/.cpp
  • src/gui/PanadapterStack.h/.cpp

Key modified files

  • src/models/RadioModel.h/.cpp — single-pan state → PanadapterModel map
  • src/core/PanadapterStream.h/.cpp — per-stream frame assembly, stream ID signals
  • src/gui/MainWindow.h/.cpp — PanadapterStack, per-pan wiring
  • src/models/SliceModel.h/.cpp — parse pan key, panId tracking

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementImprovement to existing feature

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions