| 336 | } |
| 337 | |
| 338 | int panYpixelsFor(const SpectrumWidget* spectrum) |
| 339 | { |
| 340 | if (!spectrum) { |
| 341 | return kDefaultPanYpixels; |
| 342 | } |
| 343 | |
| 344 | const int ypix = spectrum->spectrumPixelHeight(); |
| 345 | if (ypix < kMinPanYpixels) { |
| 346 | return kDefaultPanYpixels; |
| 347 | } |
| 348 | // FFT bins arrive as radio-encoded pixel positions, not full-precision dBm |
| 349 | // samples. Request render-device pixels and keep the historical 700 px |
| 350 | // floor so zoomed traces have sub-screen-pixel precision. |
| 351 | return std::max(radioPixelsFor(spectrum, ypix), kDefaultPanYpixels); |
| 352 | } |
| 353 | |
| 354 | bool panPixelDimensionsReady(const SpectrumWidget* spectrum) |
| 355 | { |
no test coverage detected