mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 20:37:33 +00:00
Move VFO A to top layout
This commit is contained in:
+131
-41
@@ -267,6 +267,8 @@ type
|
|||||||
PanelVfoA: TPanel;
|
PanelVfoA: TPanel;
|
||||||
LblVfoALabel: TLabel;
|
LblVfoALabel: TLabel;
|
||||||
FreqDispA: TFreqDisplay;
|
FreqDispA: TFreqDisplay;
|
||||||
|
BtnTopVfoASelect: TFlatButton;
|
||||||
|
BtnTopVfoATX: TFlatButton;
|
||||||
|
|
||||||
PanelVfoB: TPanel;
|
PanelVfoB: TPanel;
|
||||||
LblVfoBLabel: TLabel;
|
LblVfoBLabel: TLabel;
|
||||||
@@ -278,6 +280,7 @@ type
|
|||||||
BtnVfoSwap: TFlatButton;
|
BtnVfoSwap: TFlatButton;
|
||||||
BtnVfoACopyB: TFlatButton;
|
BtnVfoACopyB: TFlatButton;
|
||||||
BtnVfoBCopyA: TFlatButton;
|
BtnVfoBCopyA: TFlatButton;
|
||||||
|
PanelTopVfoA: TPanel;
|
||||||
PanelTopVfoB: TPanel;
|
PanelTopVfoB: TPanel;
|
||||||
|
|
||||||
PanelBands: TPanel;
|
PanelBands: TPanel;
|
||||||
@@ -378,6 +381,8 @@ type
|
|||||||
procedure ApplyVfoA(NewFreq: Int64);
|
procedure ApplyVfoA(NewFreq: Int64);
|
||||||
procedure FreqDispAClick(Sender: TObject);
|
procedure FreqDispAClick(Sender: TObject);
|
||||||
procedure FreqDispBClick(Sender: TObject);
|
procedure FreqDispBClick(Sender: TObject);
|
||||||
|
procedure BtnTopVfoASelectClick(Sender: TObject);
|
||||||
|
procedure BtnTopVfoATXClick(Sender: TObject);
|
||||||
procedure BtnTopVfoBSelectClick(Sender: TObject);
|
procedure BtnTopVfoBSelectClick(Sender: TObject);
|
||||||
procedure BtnTopVfoBTXClick(Sender: TObject);
|
procedure BtnTopVfoBTXClick(Sender: TObject);
|
||||||
procedure ActivateVfo(Idx: Integer);
|
procedure ActivateVfo(Idx: Integer);
|
||||||
@@ -1280,33 +1285,62 @@ begin
|
|||||||
|
|
||||||
Y := 2;
|
Y := 2;
|
||||||
|
|
||||||
// VFO A
|
// VFO A (compact top block)
|
||||||
|
PanelTopVfoA := TPanel.Create(Self);
|
||||||
|
PanelTopVfoA.Parent := Self;
|
||||||
|
PanelTopVfoA.SetBounds(0, 0, TOP_VFO_W, 60);
|
||||||
|
PanelTopVfoA.BevelOuter := bvNone;
|
||||||
|
PanelTopVfoA.Color := CLR_PANEL;
|
||||||
|
|
||||||
PanelVfoA := TPanel.Create(Self);
|
PanelVfoA := TPanel.Create(Self);
|
||||||
PanelVfoA.Parent := PanelLeft;
|
PanelVfoA.Parent := PanelTopVfoA;
|
||||||
PanelVfoA.SetBounds(0, Y, LEFT_W, 56);
|
PanelVfoA.SetBounds(0, 0, TOP_VFO_W, TOP_VFO_FREQ_H);
|
||||||
PanelVfoA.BevelOuter := bvNone;
|
PanelVfoA.BevelOuter := bvNone;
|
||||||
|
|
||||||
|
BtnTopVfoASelect := MakeBtn(PanelVfoA, 'A', 0, 7, 18, 16, BtnTopVfoASelectClick);
|
||||||
|
BtnTopVfoASelect.Font.Name := 'Courier New';
|
||||||
|
BtnTopVfoASelect.Font.Size := 6;
|
||||||
|
BtnTopVfoASelect.Font.Bold := True;
|
||||||
|
BtnTopVfoASelect.ClrNorm := TColor($00303030);
|
||||||
|
BtnTopVfoASelect.ClrHot := TColor($00404040);
|
||||||
|
BtnTopVfoASelect.ClrActive := TColor($00404040);
|
||||||
|
BtnTopVfoASelect.ClrBorder := TColor($00505050);
|
||||||
|
BtnTopVfoASelect.ClrText := CLR_TEXTDIM;
|
||||||
|
BtnTopVfoASelect.ClrTextAct := CLR_TEXT;
|
||||||
|
|
||||||
|
BtnTopVfoATX := MakeBtn(PanelVfoA, 'TX', 0, 25, 18, 16, BtnTopVfoATXClick);
|
||||||
|
BtnTopVfoATX.Font.Name := 'Courier New';
|
||||||
|
BtnTopVfoATX.Font.Size := 6;
|
||||||
|
BtnTopVfoATX.Font.Bold := True;
|
||||||
|
BtnTopVfoATX.ClrNorm := TColor($00303030);
|
||||||
|
BtnTopVfoATX.ClrHot := TColor($00404040);
|
||||||
|
BtnTopVfoATX.ClrActive := TColor($00404040);
|
||||||
|
BtnTopVfoATX.ClrBorder := TColor($00505050);
|
||||||
|
BtnTopVfoATX.ClrText := CLR_TEXTDIM;
|
||||||
|
BtnTopVfoATX.ClrTextAct := CLR_TEXT;
|
||||||
|
|
||||||
LblVfoALabel := TLabel.Create(Self);
|
LblVfoALabel := TLabel.Create(Self);
|
||||||
LblVfoALabel.Parent := PanelVfoA;
|
LblVfoALabel.Parent := PanelVfoA;
|
||||||
LblVfoALabel.Caption := 'VFO-A';
|
LblVfoALabel.Caption := 'VFO-A';
|
||||||
LblVfoALabel.Left := 4; LblVfoALabel.Top := 2;
|
LblVfoALabel.Left := 0; LblVfoALabel.Top := 0;
|
||||||
LblVfoALabel.Font.Name := 'Courier New'; LblVfoALabel.Font.Size := 7;
|
LblVfoALabel.Font.Name := 'Courier New'; LblVfoALabel.Font.Size := 7;
|
||||||
LblVfoALabel.Font.Color := CLR_TEXTDIM;
|
LblVfoALabel.Font.Color := CLR_TEXTDIM;
|
||||||
|
LblVfoALabel.Visible := False;
|
||||||
|
|
||||||
FreqDispA := TFreqDisplay.Create(Self);
|
FreqDispA := TFreqDisplay.Create(Self);
|
||||||
FreqDispA.Parent := PanelVfoA;
|
FreqDispA.Parent := PanelVfoA;
|
||||||
FreqDispA.SetBounds(0, 14, LEFT_W, 36);
|
FreqDispA.SetBounds(58, -2, TOP_VFO_W - 58, TOP_VFO_FREQ_H);
|
||||||
FreqDispA.FontSize := 20;
|
FreqDispA.FontSize := 22;
|
||||||
FreqDispA.FontName := 'Courier New';
|
FreqDispA.FontName := 'Courier New';
|
||||||
FreqDispA.Frequency := Round(FVfoA);
|
FreqDispA.Frequency := Round(FVfoA);
|
||||||
FreqDispA.ColorNormal := CLR_FREQ;
|
FreqDispA.ColorNormal := CLR_FREQ;
|
||||||
FreqDispA.ColorHover := TColor($0040DDFF);
|
FreqDispA.ColorHover := TColor($0040DDFF);
|
||||||
FreqDispA.ColorDim := CLR_TEXTDIM;
|
FreqDispA.ColorDim := CLR_TEXTDIM;
|
||||||
|
FreqDispA.MinMhzDigits := 3;
|
||||||
|
FreqDispA.DimLeadingZeros := True;
|
||||||
FreqDispA.OnChange := FreqDispAChanged;
|
FreqDispA.OnChange := FreqDispAChanged;
|
||||||
FreqDispA.OnClick := FreqDispAClick;
|
FreqDispA.OnClick := FreqDispAClick;
|
||||||
|
|
||||||
Inc(Y, 58);
|
|
||||||
|
|
||||||
// VFO B (compact top block)
|
// VFO B (compact top block)
|
||||||
PanelTopVfoB := TPanel.Create(Self);
|
PanelTopVfoB := TPanel.Create(Self);
|
||||||
PanelTopVfoB.Parent := Self;
|
PanelTopVfoB.Parent := Self;
|
||||||
@@ -1756,6 +1790,7 @@ const
|
|||||||
TOP_VFO_MIN_W = 244;
|
TOP_VFO_MIN_W = 244;
|
||||||
TOP_VFO_BTN_H = 14;
|
TOP_VFO_BTN_H = 14;
|
||||||
TOP_VFO_FREQ_H = 47;
|
TOP_VFO_FREQ_H = 47;
|
||||||
|
TOP_VFO_PAIR_GAP = 8;
|
||||||
SEP_GAP = 4;
|
SEP_GAP = 4;
|
||||||
SETTINGS_GAP = 4;
|
SETTINGS_GAP = 4;
|
||||||
BTN_GAP = 4;
|
BTN_GAP = 4;
|
||||||
@@ -1766,22 +1801,30 @@ var
|
|||||||
BtnX: Integer;
|
BtnX: Integer;
|
||||||
SepLeft: Integer;
|
SepLeft: Integer;
|
||||||
LeftEdge: Integer;
|
LeftEdge: Integer;
|
||||||
|
LeftEdgeB: Integer;
|
||||||
RightW: Integer;
|
RightW: Integer;
|
||||||
SMW: Integer;
|
SMW: Integer;
|
||||||
SMLeft: Integer;
|
SMLeft: Integer;
|
||||||
TopVfoW: Integer;
|
TopVfoAW: Integer;
|
||||||
NeedFreqW: Integer;
|
TopVfoBW: Integer;
|
||||||
|
NeedFreqAW: Integer;
|
||||||
|
NeedFreqBW: Integer;
|
||||||
NeedBtnW: Integer;
|
NeedBtnW: Integer;
|
||||||
|
PairW: Integer;
|
||||||
begin
|
begin
|
||||||
if (PanelToolbar = nil) or (PanelTopVfoB = nil) then Exit;
|
if (PanelToolbar = nil) or (PanelSpanButtons = nil) or
|
||||||
|
(PanelTopVfoA = nil) or (PanelTopVfoB = nil) then Exit;
|
||||||
|
|
||||||
Canvas.Font.Name := FreqDispB.FontName;
|
Canvas.Font.Name := FreqDispB.FontName;
|
||||||
Canvas.Font.Size := FreqDispB.FontSize;
|
Canvas.Font.Size := FreqDispB.FontSize;
|
||||||
Canvas.Font.Style := [fsBold];
|
Canvas.Font.Style := [fsBold];
|
||||||
NeedFreqW := FreqDispB.Left + Canvas.TextWidth('000.000.000') + 8;
|
NeedFreqAW := FreqDispA.Left + Canvas.TextWidth('000.000.000') + 8;
|
||||||
|
NeedFreqBW := FreqDispB.Left + Canvas.TextWidth('000.000.000') + 8;
|
||||||
NeedBtnW := BtnVfoSwap.Width + BtnVfoACopyB.Width + BtnVfoBCopyA.Width +
|
NeedBtnW := BtnVfoSwap.Width + BtnVfoACopyB.Width + BtnVfoBCopyA.Width +
|
||||||
BTN_GAP * 2 + 8;
|
BTN_GAP * 2 + 8;
|
||||||
TopVfoW := Max(TOP_VFO_MIN_W, Max(NeedFreqW, NeedBtnW));
|
TopVfoAW := Max(TOP_VFO_MIN_W, NeedFreqAW);
|
||||||
|
TopVfoBW := Max(TOP_VFO_MIN_W, Max(NeedFreqBW, NeedBtnW));
|
||||||
|
PairW := TopVfoAW + TOP_VFO_PAIR_GAP + TopVfoBW;
|
||||||
|
|
||||||
SepLeft := PanelToolbar.ClientWidth - MARGIN;
|
SepLeft := PanelToolbar.ClientWidth - MARGIN;
|
||||||
if PanelLeft <> nil then
|
if PanelLeft <> nil then
|
||||||
@@ -1795,34 +1838,46 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
LeftEdge := SepLeft - SEP_GAP - TopVfoW;
|
LeftEdge := SepLeft - SEP_GAP - PairW;
|
||||||
if BtnSettings <> nil then
|
if BtnSettings <> nil then
|
||||||
LeftEdge := Max(LeftEdge, BtnSettings.Left + BtnSettings.Width + SETTINGS_GAP);
|
LeftEdge := Max(LeftEdge, BtnSettings.Left + BtnSettings.Width + SETTINGS_GAP);
|
||||||
|
|
||||||
if LeftEdge + TopVfoW > SepLeft - SEP_GAP then
|
if LeftEdge + PairW > SepLeft - SEP_GAP then
|
||||||
begin
|
begin
|
||||||
|
PanelTopVfoA.Visible := False;
|
||||||
PanelTopVfoB.Visible := False;
|
PanelTopVfoB.Visible := False;
|
||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
PanelTopVfoA.Visible := True;
|
||||||
PanelTopVfoB.Visible := True;
|
PanelTopVfoB.Visible := True;
|
||||||
BlockH := PanelToolbar.Height + PanelSpanButtons.Height - (MARGIN * 2);
|
BlockH := PanelToolbar.Height + PanelSpanButtons.Height - (MARGIN * 2);
|
||||||
if BlockH < 56 then BlockH := 56;
|
if BlockH < 56 then BlockH := 56;
|
||||||
PanelTopVfoB.SetBounds(LeftEdge, TOP_OFFSET, TopVfoW, BlockH);
|
LeftEdgeB := LeftEdge + TopVfoAW + TOP_VFO_PAIR_GAP;
|
||||||
PanelVfoB.SetBounds(0, 0, TopVfoW, TOP_VFO_FREQ_H);
|
|
||||||
|
PanelTopVfoA.SetBounds(LeftEdge, TOP_OFFSET, TopVfoAW, BlockH);
|
||||||
|
PanelVfoA.SetBounds(0, 0, TopVfoAW, TOP_VFO_FREQ_H);
|
||||||
|
FreqDispA.SetBounds(FreqDispA.Left, FreqDispA.Top,
|
||||||
|
Max(20, TopVfoAW - FreqDispA.Left), TOP_VFO_FREQ_H);
|
||||||
|
BtnTopVfoASelect.Left := FreqDispA.Left - BtnTopVfoASelect.Width;
|
||||||
|
BtnTopVfoATX.Left := FreqDispA.Left - BtnTopVfoATX.Width;
|
||||||
|
|
||||||
|
PanelTopVfoB.SetBounds(LeftEdgeB, TOP_OFFSET, TopVfoBW, BlockH);
|
||||||
|
PanelVfoB.SetBounds(0, 0, TopVfoBW, TOP_VFO_FREQ_H);
|
||||||
FreqDispB.SetBounds(FreqDispB.Left, FreqDispB.Top,
|
FreqDispB.SetBounds(FreqDispB.Left, FreqDispB.Top,
|
||||||
Max(20, TopVfoW - FreqDispB.Left), TOP_VFO_FREQ_H);
|
Max(20, TopVfoBW - FreqDispB.Left), TOP_VFO_FREQ_H);
|
||||||
BtnTopVfoBSelect.Left := FreqDispB.Left - BtnTopVfoBSelect.Width;
|
BtnTopVfoBSelect.Left := FreqDispB.Left - BtnTopVfoBSelect.Width;
|
||||||
BtnTopVfoBTX.Left := FreqDispB.Left - BtnTopVfoBTX.Width;
|
BtnTopVfoBTX.Left := FreqDispB.Left - BtnTopVfoBTX.Width;
|
||||||
BtnY := PanelTopVfoB.Height - TOP_VFO_BTN_H - 8;
|
BtnY := PanelTopVfoB.Height - TOP_VFO_BTN_H - 8;
|
||||||
if BtnY < 42 then BtnY := 42;
|
if BtnY < 42 then BtnY := 42;
|
||||||
PanelVfoButtons.SetBounds(4, BtnY, TopVfoW - 8, TOP_VFO_BTN_H);
|
PanelVfoButtons.SetBounds(4, BtnY, TopVfoBW - 8, TOP_VFO_BTN_H);
|
||||||
BtnRowW := BtnVfoSwap.Width + BtnVfoACopyB.Width + BtnVfoBCopyA.Width + BTN_GAP * 2;
|
BtnRowW := BtnVfoSwap.Width + BtnVfoACopyB.Width + BtnVfoBCopyA.Width + BTN_GAP * 2;
|
||||||
BtnX := FreqDispB.Left + (FreqDispB.Width - BtnRowW) div 2 - PanelVfoButtons.Left;
|
BtnX := FreqDispB.Left + (FreqDispB.Width - BtnRowW) div 2 - PanelVfoButtons.Left;
|
||||||
if BtnX < 0 then BtnX := 0;
|
if BtnX < 0 then BtnX := 0;
|
||||||
BtnVfoSwap.Left := BtnX;
|
BtnVfoSwap.Left := BtnX;
|
||||||
BtnVfoACopyB.Left := BtnVfoSwap.Left + BtnVfoSwap.Width + BTN_GAP;
|
BtnVfoACopyB.Left := BtnVfoSwap.Left + BtnVfoSwap.Width + BTN_GAP;
|
||||||
BtnVfoBCopyA.Left := BtnVfoACopyB.Left + BtnVfoACopyB.Width + BTN_GAP;
|
BtnVfoBCopyA.Left := BtnVfoACopyB.Left + BtnVfoACopyB.Width + BTN_GAP;
|
||||||
|
PanelTopVfoA.BringToFront;
|
||||||
PanelTopVfoB.BringToFront;
|
PanelTopVfoB.BringToFront;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -2011,6 +2066,7 @@ procedure TMainForm.ApplyDarkTheme;
|
|||||||
begin
|
begin
|
||||||
Color := CLR_BG; Font.Color := CLR_TEXT;
|
Color := CLR_BG; Font.Color := CLR_TEXT;
|
||||||
DP(PanelToolbar); DP(PanelLeft);
|
DP(PanelToolbar); DP(PanelLeft);
|
||||||
|
DP(PanelTopVfoA); DP(PanelTopVfoB);
|
||||||
DP(PanelVfoA); DP(PanelVfoB); DP(PanelVfoButtons);
|
DP(PanelVfoA); DP(PanelVfoB); DP(PanelVfoButtons);
|
||||||
DP(PanelBands); DP(PanelMode); DP(PanelFilter);
|
DP(PanelBands); DP(PanelMode); DP(PanelFilter);
|
||||||
DP(PanelRX); DP(PanelTX);
|
DP(PanelRX); DP(PanelTX);
|
||||||
@@ -2127,33 +2183,53 @@ const
|
|||||||
begin
|
begin
|
||||||
FreqDispA.Frequency := Round(FVfoA);
|
FreqDispA.Frequency := Round(FVfoA);
|
||||||
FreqDispB.Frequency := Round(FVfoB);
|
FreqDispB.Frequency := Round(FVfoB);
|
||||||
|
FreqDispA.FontSize := TOP_VFO_FONT;
|
||||||
|
FreqDispB.FontSize := TOP_VFO_FONT;
|
||||||
|
FreqDispA.Height := TOP_VFO_FREQ_H;
|
||||||
|
FreqDispB.Height := TOP_VFO_FREQ_H;
|
||||||
|
|
||||||
if FActiveVfo = 0 then
|
if FActiveVfo = 0 then
|
||||||
begin
|
begin
|
||||||
// VFO-A активен: яркий зелёный, крупный
|
// VFO-A активен: яркий зелёный
|
||||||
FreqDispA.ColorNormal := CLR_FREQ; FreqDispA.FontSize := 20;
|
FreqDispA.ColorNormal := CLR_FREQ;
|
||||||
FreqDispB.ColorNormal := CLR_FREQ_DIM; FreqDispB.FontSize := TOP_VFO_FONT;
|
FreqDispB.ColorNormal := CLR_FREQ_DIM;
|
||||||
FreqDispA.Height := 36;
|
|
||||||
FreqDispB.Height := TOP_VFO_FREQ_H;
|
|
||||||
LblVfoALabel.Font.Color := CLR_FREQ;
|
LblVfoALabel.Font.Color := CLR_FREQ;
|
||||||
LblVfoBLabel.Font.Color := CLR_TEXTDIM;
|
LblVfoBLabel.Font.Color := CLR_TEXTDIM;
|
||||||
|
if BtnTopVfoASelect <> nil then StyleButton(BtnTopVfoASelect, True);
|
||||||
if BtnTopVfoBSelect <> nil then StyleButton(BtnTopVfoBSelect, False);
|
if BtnTopVfoBSelect <> nil then StyleButton(BtnTopVfoBSelect, False);
|
||||||
end else begin
|
end else begin
|
||||||
// VFO-B активен: яркий зелёный; размер зависит от размещения
|
// VFO-B активен: яркий зелёный
|
||||||
FreqDispA.ColorNormal := CLR_FREQ_DIM; FreqDispA.FontSize := 14;
|
FreqDispA.ColorNormal := CLR_FREQ_DIM;
|
||||||
FreqDispB.ColorNormal := CLR_FREQ;
|
FreqDispB.ColorNormal := CLR_FREQ;
|
||||||
if (PanelVfoB <> nil) and (PanelVfoB.Parent = PanelTopVfoB) then
|
|
||||||
FreqDispB.FontSize := TOP_VFO_FONT
|
|
||||||
else
|
|
||||||
FreqDispB.FontSize := 20;
|
|
||||||
FreqDispA.Height := 28;
|
|
||||||
if (PanelVfoB <> nil) and (PanelVfoB.Parent = PanelTopVfoB) then
|
|
||||||
FreqDispB.Height := TOP_VFO_FREQ_H
|
|
||||||
else
|
|
||||||
FreqDispB.Height := 36;
|
|
||||||
LblVfoALabel.Font.Color := CLR_TEXTDIM;
|
LblVfoALabel.Font.Color := CLR_TEXTDIM;
|
||||||
LblVfoBLabel.Font.Color := CLR_FREQ;
|
LblVfoBLabel.Font.Color := CLR_FREQ;
|
||||||
|
if BtnTopVfoASelect <> nil then StyleButton(BtnTopVfoASelect, False);
|
||||||
if BtnTopVfoBSelect <> nil then StyleButton(BtnTopVfoBSelect, True);
|
if BtnTopVfoBSelect <> nil then StyleButton(BtnTopVfoBSelect, True);
|
||||||
end;
|
end;
|
||||||
|
if BtnTopVfoATX <> nil then
|
||||||
|
begin
|
||||||
|
if not FSplitTxB then
|
||||||
|
begin
|
||||||
|
BtnTopVfoATX.ClrNorm := TColor($00000060);
|
||||||
|
BtnTopVfoATX.ClrHot := TColor($00000090);
|
||||||
|
BtnTopVfoATX.ClrActive := TColor($00000090);
|
||||||
|
BtnTopVfoATX.ClrBorder := TColor($001010B0);
|
||||||
|
BtnTopVfoATX.ClrText := TColor($00C8D8FF);
|
||||||
|
BtnTopVfoATX.ClrTextAct := TColor($00E8F0FF);
|
||||||
|
BtnTopVfoATX.Active := True;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
BtnTopVfoATX.ClrNorm := TColor($00303030);
|
||||||
|
BtnTopVfoATX.ClrHot := TColor($00404040);
|
||||||
|
BtnTopVfoATX.ClrActive := TColor($00404040);
|
||||||
|
BtnTopVfoATX.ClrBorder := TColor($00505050);
|
||||||
|
BtnTopVfoATX.ClrText := CLR_TEXTDIM;
|
||||||
|
BtnTopVfoATX.ClrTextAct := CLR_TEXT;
|
||||||
|
BtnTopVfoATX.Active := False;
|
||||||
|
end;
|
||||||
|
BtnTopVfoATX.Invalidate;
|
||||||
|
end;
|
||||||
if BtnTopVfoBTX <> nil then
|
if BtnTopVfoBTX <> nil then
|
||||||
begin
|
begin
|
||||||
if FSplitTxB then
|
if FSplitTxB then
|
||||||
@@ -2178,11 +2254,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
BtnTopVfoBTX.Invalidate;
|
BtnTopVfoBTX.Invalidate;
|
||||||
end;
|
end;
|
||||||
if (PanelVfoB <> nil) and (PanelVfoB.Parent = PanelTopVfoB) then
|
|
||||||
begin
|
|
||||||
FreqDispB.FontSize := TOP_VFO_FONT;
|
|
||||||
FreqDispB.Height := TOP_VFO_FREQ_H;
|
|
||||||
end;
|
|
||||||
FreqDispA.Invalidate;
|
FreqDispA.Invalidate;
|
||||||
FreqDispB.Invalidate;
|
FreqDispB.Invalidate;
|
||||||
LblVfoALabel.Invalidate;
|
LblVfoALabel.Invalidate;
|
||||||
@@ -3191,6 +3262,25 @@ begin
|
|||||||
ActivateVfo(1);
|
ActivateVfo(1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TMainForm.BtnTopVfoASelectClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if FActiveVfo <> 0 then
|
||||||
|
ActivateVfo(0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TMainForm.BtnTopVfoATXClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
FSplitTxB := False;
|
||||||
|
UpdateVfoDisplay;
|
||||||
|
|
||||||
|
if FNetwork.Connected and FNetwork.Running then
|
||||||
|
begin
|
||||||
|
FNetwork.UpdateState(FCenterFreq, ActiveTXFreqHz, FDriveLevel,
|
||||||
|
FTransmitting, True, True);
|
||||||
|
FNetwork.SendFullHP;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TMainForm.BtnTopVfoBSelectClick(Sender: TObject);
|
procedure TMainForm.BtnTopVfoBSelectClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if FActiveVfo <> 1 then
|
if FActiveVfo <> 1 then
|
||||||
@@ -3199,7 +3289,7 @@ end;
|
|||||||
|
|
||||||
procedure TMainForm.BtnTopVfoBTXClick(Sender: TObject);
|
procedure TMainForm.BtnTopVfoBTXClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
FSplitTxB := not FSplitTxB;
|
FSplitTxB := True;
|
||||||
if FSplitTxB and (FActiveVfo <> 0) then
|
if FSplitTxB and (FActiveVfo <> 0) then
|
||||||
ActivateVfo(0)
|
ActivateVfo(0)
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user