mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-10-09 16:50:28 -04:00
QMessageBox::information() and friends build the box on the stack, parent it to the calling widget and run a nested event loop in exec(). If the parent is closed while the box is open, which the Web API can do at any time, the parent deletes the box and its children and the heap is corrupted. MessageDialog offers the same calls, but the box is heap allocated, given Qt::WA_DeleteOnClose and shown rather than exec'd, so nothing runs a nested event loop and the box owns its own lifetime. A box with the same text as one already up is raised instead of a second being created. The trade off is that information(), warning() and critical() return immediately and cannot report which button was pressed. question() takes a callback for the cases that need the answer. Converts the call sites in the device, channel and feature GUIs. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Local input plugin
Introduction
This input sample source plugin gets its samples from a Local Sink channel in another device set.
Interface
The top and bottom bars of the device window are described here
1: Start/Stop
Device start / stop button.
- Blue triangle icon: device is ready and can be started
- Green square icon: device is running and can be stopped
3: Frequency
This is the center frequency in Hz sent from the Local Sink channel instance and corresponds to the center frequency of reception.
4: Stream sample rate
Stream I/Q sample rate in kS/s
5: Auto remove DC component
Filters out the possible DC component. You use this if you notice a spike in the center of the pass band.
6: Auto make I/Q balance
Re-balances the I and Q channels. You use this if you notice ghost artifacts symmetric around the center frequency.
