Fixed 'use Potentiometer CW speed' with Winkeyer (and tested) in NewQSO, Contest, CWtype and CW keys

This commit is contained in:
OH1KH 2022-10-21 16:13:40 +03:00
parent 25a8ec3f39
commit e63e8e1109
3 changed files with 42 additions and 9 deletions

View File

@ -91,7 +91,7 @@ implementation
{$R *.lfm}
{ TfrmCWType }
uses fNewQSO,dUtils,dData, uMyIni;
uses fTRXControl,fNewQSO,dUtils,dData, uMyIni;
function TfrmCWType.PassedKey(key:char):boolean;
Begin
@ -392,6 +392,8 @@ begin
end;
procedure TfrmCWType.FormShow(Sender: TObject);
var
n:string;
begin
dmUtils.LoadWindowPos(frmCWType);
rgMode.ItemIndex := cqrini.ReadInteger('CW','Mode',1);
@ -400,6 +402,15 @@ begin
m.Clear;
Switch2Word :=false;
WasMemoLen := length(m.lines.text);
n:=IntToStr(frmTRXControl.cmbRig.ItemIndex);
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
Begin
frmNewQSO.sbNewQSO.Panels[4].Text := 'Pot WPM';
edtSpeed.Enabled:=False;
end
else
edtSpeed.Enabled:=True;
//set debug rules for this form
LocalDbg := dmData.DebugLevel >= 1 ;
if dmData.DebugLevel < 0 then
@ -412,9 +423,18 @@ begin
end;
procedure TfrmCWType.edtSpeedChange(Sender: TObject);
var
n:string;
begin
if Assigned(frmNewQSO.CWint) then
begin
n:=IntToStr(frmTRXControl.cmbRig.ItemIndex);
frmNewQSO.CWint.SetSpeed(edtSpeed.Value);
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(edtSpeed.Value)+'WPM';
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
frmNewQSO.sbNewQSO.Panels[4].Text := 'Pot WPM'
else
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(edtSpeed.Value)+'WPM';
end;
end;
procedure TfrmCWType.fraCWKeys1Resize(Sender: TObject);
var
@ -556,12 +576,17 @@ end;
procedure TfrmCWType.SetSpeed(change:integer);
var
speed : Integer = 0;
Begin
n : string;
begin
if Assigned(frmNewQSO.CWint) then
begin
n:=IntToStr(frmTRXControl.cmbRig.ItemIndex);
speed := frmNewQSO.CWint.GetSpeed+change;
frmNewQSO.CWint.SetSpeed(speed);
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(speed)+'WPM';
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
frmNewQSO.sbNewQSO.Panels[4].Text := 'Pot WPM'
else
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(speed)+'WPM';
edtSpeed.Value := speed;
end;
end;

View File

@ -130,6 +130,7 @@ var
tmp: string;
speed: integer = 0;
i: integer = 0;
n:string;
begin
// enter anywhere
@ -183,13 +184,17 @@ begin
key := 0;
end;
n:=IntToStr(frmTRXControl.cmbRig.ItemIndex);
if (key = 33) then//pgup
begin
if Assigned(frmNewQSO.CWint) then
begin
speed := frmNewQSO.CWint.GetSpeed + 2;
frmNewQSO.CWint.SetSpeed(speed);
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(speed) + 'WPM';
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
frmNewQSO.sbNewQSO.Panels[4].Text := 'Pot WPM'
else
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(speed) + 'WPM';
lblSpeed.Caption:= frmNewQSO.sbNewQSO.Panels[4].Text;
end;
key := 0;
@ -201,7 +206,10 @@ begin
begin
speed := frmNewQSO.CWint.GetSpeed - 2;
frmNewQSO.CWint.SetSpeed(speed);
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(speed) + 'WPM';
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
frmNewQSO.sbNewQSO.Panels[4].Text := 'Pot WPM'
else
frmNewQSO.sbNewQSO.Panels[4].Text := IntToStr(speed) + 'WPM';
lblSpeed.Caption:= frmNewQSO.sbNewQSO.Panels[4].Text;
end;
key := 0;

View File

@ -5569,7 +5569,7 @@ begin
speed := CWint.GetSpeed+2;
CWint.SetSpeed(speed);
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
sbNewQSO.Panels[4].Text := 'PotWPM'
sbNewQSO.Panels[4].Text := 'Pot WPM'
else
sbNewQSO.Panels[4].Text := IntToStr(speed) + 'WPM';
if (frmCWType <> nil ) then frmCWType.edtSpeed.Value := speed;
@ -5583,7 +5583,7 @@ begin
speed := CWint.GetSpeed-2;
CWint.SetSpeed(speed);
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
sbNewQSO.Panels[4].Text := 'PotWPM'
sbNewQSO.Panels[4].Text := 'Pot WPM'
else
sbNewQSO.Panels[4].Text := IntToStr(speed) + 'WPM';
if (frmCWType <> nil ) then frmCWType.edtSpeed.Value := speed;
@ -7227,7 +7227,7 @@ begin
if UseSpeed>0 then CWint.SetSpeed(UseSpeed);
end;
if (cqrini.ReadInteger('CW'+n,'Type',0)=1) and cqrini.ReadBool('CW'+n,'PotSpeed',False) then
sbNewQSO.Panels[4].Text := 'PotWPM'
sbNewQSO.Panels[4].Text := 'Pot WPM'
else
sbNewQSO.Panels[4].Text := IntToStr(UseSpeed) + 'WPM';
if frmCWType.Showing then frmCWType.edtSpeed.Value := UseSpeed;