mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 20:37:33 +00:00
fix(slices): красная полоса фильтра при TX — у передающего слайса, не у главного
- MainForm: TXOverlay главной вьюхи взводился по FTransmitting без учёта источника TX → красной становилась полоса главного VFO даже при передаче со слайса. Теперь TXOverlay = FTransmitting and (FTxSliceId = 0). - VfoOverlay: публичный TxActive (FTx) — вьюхи знают, какой слайс передаёт. - SpectrumView/SpectrumViewOpengl: полоса/края/несущая передающего слайса красные (alpha 100, как у главного при TX), иначе цвет бейджа слайса. - Фикс цвета TX-полосы в GL: $00E03030 при ColorToRGB (младший байт = R) давал синий вместо красного; общая константа CLR_TX_BAND = $003030E0. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+4
-1
@@ -1350,7 +1350,10 @@ begin
|
||||
// DUP: данные от RX-анализатора (TXMode=False), TX-полоса рисуется
|
||||
// поверх через TXOverlay. Без DUP при TX оба флага True.
|
||||
FSpecView.TXMode := FController.FTransmitting and not FController.FDisplayDuplex;
|
||||
FSpecView.TXOverlay := FController.FTransmitting;
|
||||
// Красная полоса главного VFO — только когда передаём с него: при
|
||||
// TX со слайса краснеет полоса ТОГО слайса (DrawSliceFilterMarkers).
|
||||
FSpecView.TXOverlay := FController.FTransmitting and
|
||||
(FController.FTxSliceId = 0);
|
||||
ApplySpecViewGridFromState; // сетка спектра под активный тракт
|
||||
RefreshTxIndicators; // TX-бейджи флагов (какой слайс передаёт)
|
||||
end; // (DUC-очередь сбрасывает SetMOX)
|
||||
|
||||
Reference in New Issue
Block a user