diff --git a/RadioController.pas b/RadioController.pas index a352dcf..7ed9f52 100644 --- a/RadioController.pas +++ b/RadioController.pas @@ -3385,10 +3385,15 @@ begin if FTuning then begin + // Уровень настройки всегда идёт от глобального TUN Level — иначе ручка в + // Transmit в трансвертере оказывалась мёртвой. Мощность слота (если + // включена галка) работает МНОЖИТЕЛЕМ, ровно как для обычного drive ниже: + // это «сколько мощности трансиверa разрешено этому трансвертеру», и к + // настройке оно относится так же, как к передаче. + Pos := EnsureRange(FTXSettings.TUNLevel, 0, 100); if XvtrActive and FXvtrSettings.UseXVTRTunePower then - Pos := EnsureRange(FXvtrSettings.Entries[FCurrentXvtr].TXPower, 0, 100) - else - Pos := EnsureRange(FTXSettings.TUNLevel, 0, 100); + Pos := Round(Pos * EnsureRange(FXvtrSettings.Entries[FCurrentXvtr].TXPower, + 0, 100) / 100.0); end else begin diff --git a/SettingsForm.pas b/SettingsForm.pas index 4629344..effcf52 100644 --- a/SettingsForm.pas +++ b/SettingsForm.pas @@ -4896,8 +4896,8 @@ begin MARGIN, GrpY, GRP_W, GRP_TITLE_H + 36); FChkXvtrTunPwr := TFlatCheckBox.Create(Self); FChkXvtrTunPwr.Parent := GrpOpts; - FChkXvtrTunPwr.Caption := 'Use XVTR power for TUN ' - + '(TUN button uses the per-slot TX Power instead of the global TUN Level)'; + FChkXvtrTunPwr.Caption := 'Scale TUN by XVTR power ' + + '(TUN level from Transmit is multiplied by the per-slot TX Power)'; FChkXvtrTunPwr.SetBounds(DpiScale(14), DpiScale(GRP_TITLE_H + 8), DpiScale(GRP_W - 28), DpiScale(20)); FChkXvtrTunPwr.Font.Color := CLR_TEXT; FChkXvtrTunPwr.Font.Name := UI_FONT;