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,10 +423,19 @@ 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);
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
w, h, l, t: word;
@ -556,11 +576,16 @@ 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);
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;

View File

@ -130,6 +130,7 @@ var
tmp: string;
speed: integer = 0;
i: integer = 0;
n:string;
begin
// enter anywhere
@ -183,12 +184,16 @@ 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);
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;
@ -201,6 +206,9 @@ begin
begin
speed := frmNewQSO.CWint.GetSpeed - 2;
frmNewQSO.CWint.SetSpeed(speed);
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;