mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 18:43:51 +00:00
Move WF AGC/NF from main form buttons to Settings → Waterfall checkboxes
Replaced the WF AGC and WF NF toggle buttons in the main panel with "Waterfall AGC" and "Waterfall NF" checkboxes in the Settings form Waterfall tab (AGC & Noise Floor group). Settings are global, defaults remain AGC=on, NF=off. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+11
-24
@@ -342,8 +342,6 @@ type
|
||||
BtnSNB: TFlatButton;
|
||||
BtnANF: TFlatButton;
|
||||
BtnMute: TFlatButton;
|
||||
BtnWfAGC: TFlatButton;
|
||||
BtnWfNF: TFlatButton;
|
||||
|
||||
PanelSMeterRight: TPanel;
|
||||
PbSMeterRight: TPaintBox;
|
||||
@@ -577,8 +575,6 @@ type
|
||||
procedure ActivateXvtrBand(Idx: Integer);
|
||||
procedure DeactivateXvtr;
|
||||
// -------------------------------------------------------------------------
|
||||
procedure BtnWfAGCClick(Sender: TObject);
|
||||
procedure BtnWfNFClick(Sender: TObject);
|
||||
procedure BtnHidePanelClick(Sender: TObject);
|
||||
procedure BtnSettingsClick(Sender: TObject);
|
||||
procedure PositionVfoOverlay;
|
||||
@@ -612,6 +608,7 @@ type
|
||||
SpecAvgTimeMS: Double);
|
||||
procedure ApplyWaterfallParams(WfDet, WfAvgMode: Integer;
|
||||
WfAvgTimeMS, WfHigh, WfLow, WfAGCOffset: Double);
|
||||
procedure ApplyWfAGCNF(WfAGC, WfNF: Boolean);
|
||||
procedure ApplyGridParams(RefLevel, Range, GridStep: Double);
|
||||
// Пушит активные grid-параметры (RX или TX в зависимости от FTransmitting)
|
||||
// в FSpecView и сбрасывает кэш сетки. Вызывается при смене RX↔TX и при
|
||||
@@ -1646,7 +1643,7 @@ begin
|
||||
// RX controls
|
||||
PanelRX := TPanel.Create(Self);
|
||||
PanelRX.Parent := PanelLeft;
|
||||
PanelRX.SetBounds(0, Y, LEFT_W, 150);
|
||||
PanelRX.SetBounds(0, Y, LEFT_W, 122);
|
||||
PanelRX.BevelOuter := bvNone;
|
||||
|
||||
// AGC mode — 5 кнопок в ряд
|
||||
@@ -1692,10 +1689,8 @@ begin
|
||||
BtnSNB := MakeBtn(PanelRX, 'SNB', 2*W+6, 96, W, BTN_SM, BtnSNBClick);
|
||||
BtnANF := MakeBtn(PanelRX, 'ANF', 3*W+8, 96, W, BTN_SM, BtnANFClick);
|
||||
BtnMute:= MakeBtn(PanelRX, 'MUTE', 4*W+10, 96, W, BTN_SM, BtnMuteClick);
|
||||
BtnWfAGC := MakeBtn(PanelRX, 'WF AGC', 2, 122, (LEFT_W - 6) div 2, BTN_SM, BtnWfAGCClick);
|
||||
BtnWfNF := MakeBtn(PanelRX, 'WF NF', 4 + (LEFT_W - 6) div 2, 122, (LEFT_W - 6) div 2, BTN_SM, BtnWfNFClick);
|
||||
|
||||
Inc(Y, 154);
|
||||
Inc(Y, 126);
|
||||
|
||||
// S-Meter
|
||||
|
||||
@@ -2294,8 +2289,6 @@ begin
|
||||
StyleButton(BtnSNB, BtnSNB.Active);
|
||||
StyleButton(BtnANF, BtnANF.Active);
|
||||
StyleButton(BtnMute, BtnMute.Active);
|
||||
StyleButton(BtnWfAGC, BtnWfAGC.Active);
|
||||
StyleButton(BtnWfNF, BtnWfNF.Active);
|
||||
StyleButton(BtnMOX, BtnMOX.Active);
|
||||
StyleButton(BtnTUN, BtnTUN.Active);
|
||||
|
||||
@@ -3519,8 +3512,8 @@ begin
|
||||
BtnNB.Tag := EnsureRange(G_Settings.NBMode, 0, 2); UpdateNBButton;
|
||||
BtnSNB.Tag := Ord(G_Settings.SNBEnabled); UpdateSNBButton;
|
||||
BtnANF.Tag := Ord(G_Settings.ANFEnabled); UpdateANFButton;
|
||||
FWfAGCEnabled := G_Settings.WfAGCEnabled; StyleButton(BtnWfAGC, FWfAGCEnabled);
|
||||
FWfNFEnabled := G_Settings.WfNFEnabled; StyleButton(BtnWfNF, FWfNFEnabled);
|
||||
FWfAGCEnabled := G_Settings.WfAGCEnabled;
|
||||
FWfNFEnabled := G_Settings.WfNFEnabled;
|
||||
FWfManualHigh := G_Settings.WfManualHigh;
|
||||
FWfManualLow := G_Settings.WfManualLow;
|
||||
FWfAGCOffset := G_Settings.WfAGCOffset;
|
||||
@@ -4728,18 +4721,12 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure TMainForm.BtnWfAGCClick(Sender: TObject);
|
||||
procedure TMainForm.ApplyWfAGCNF(WfAGC, WfNF: Boolean);
|
||||
begin
|
||||
FWfAGCEnabled := not FWfAGCEnabled;
|
||||
StyleButton(BtnWfAGC, FWfAGCEnabled);
|
||||
FWfAGCEnabled := WfAGC;
|
||||
FWfNFEnabled := WfNF;
|
||||
FSpecView.WfAGCEnabled := FWfAGCEnabled;
|
||||
end;
|
||||
|
||||
procedure TMainForm.BtnWfNFClick(Sender: TObject);
|
||||
begin
|
||||
FWfNFEnabled := not FWfNFEnabled;
|
||||
StyleButton(BtnWfNF, FWfNFEnabled);
|
||||
FSpecView.WfNFEnabled := FWfNFEnabled;
|
||||
FSpecView.WfNFEnabled := FWfNFEnabled;
|
||||
end;
|
||||
|
||||
procedure TMainForm.BtnHidePanelClick(Sender: TObject);
|
||||
@@ -5116,7 +5103,6 @@ end;
|
||||
procedure TMainForm.SyncWebWfAGC;
|
||||
begin
|
||||
FWfAGCEnabled := FWebSyncBool;
|
||||
StyleButton(BtnWfAGC, FWfAGCEnabled);
|
||||
FSpecView.WfAGCEnabled := FWfAGCEnabled;
|
||||
end;
|
||||
|
||||
@@ -5130,7 +5116,6 @@ end;
|
||||
procedure TMainForm.SyncWebWfNF;
|
||||
begin
|
||||
FWfNFEnabled := FWebSyncBool;
|
||||
StyleButton(BtnWfNF, FWfNFEnabled);
|
||||
FSpecView.WfNFEnabled := FWfNFEnabled;
|
||||
end;
|
||||
|
||||
@@ -6123,6 +6108,7 @@ begin
|
||||
SF.OnTXChange := OnTXSettingsChange;
|
||||
SF.OnAlexChange := OnAlexSettingsChange;
|
||||
SF.OnXvtrChange := OnXvtrSettingsChange;
|
||||
SF.OnWfAGCNFChange := ApplyWfAGCNF;
|
||||
end;
|
||||
SF := TSettingsForm(FSettingsForm);
|
||||
SF.LoadTXSettings(FTXSettings);
|
||||
@@ -6142,6 +6128,7 @@ begin
|
||||
// Перечисляем PA устройства
|
||||
SF.RefreshAudioDevices(FAudioOut, FAudioIn);
|
||||
SF.LoadVisibility(FShowSpectrum, FShowWaterfall);
|
||||
SF.LoadWfAGCNF(FWfAGCEnabled, FWfNFEnabled);
|
||||
SF.LoadFPS(FDisplayFPS);
|
||||
SF.LoadLightTheme(FLightTheme);
|
||||
SF.LoadFreqMhzDigits(FFreqMhzDigits);
|
||||
|
||||
Reference in New Issue
Block a user