Fixed localconf bug, fixed Cw init, fixed winkeyer use pot speed, fixed WPN display now 0WPM when no key, -1WPM if winkey poti used

This commit is contained in:
OH1KH 2022-09-12 15:53:48 +03:00
parent b756151a6b
commit 35b878af51
5 changed files with 44 additions and 52 deletions

View File

@ -19,7 +19,7 @@
<AutoIncrementBuild Value="True"/> <AutoIncrementBuild Value="True"/>
<MinorVersionNr Value="3"/> <MinorVersionNr Value="3"/>
<RevisionNr Value="1"/> <RevisionNr Value="1"/>
<BuildNr Value="2201"/> <BuildNr Value="2202"/>
<StringTable ProductVersion="0.3.1.2026"/> <StringTable ProductVersion="0.3.1.2026"/>
</VersionInfo> </VersionInfo>
<MacroValues Count="1"> <MacroValues Count="1">
@ -920,6 +920,7 @@
</CodeGeneration> </CodeGeneration>
<Linking> <Linking>
<Debugging> <Debugging>
<GenerateDebugInfo Value="False"/>
<DebugInfoType Value="dsDwarf2Set"/> <DebugInfoType Value="dsDwarf2Set"/>
</Debugging> </Debugging>
</Linking> </Linking>

View File

@ -149,7 +149,7 @@ begin
Sections := Sections + 'TRX,TRX1,TRX2,TRX3,TRX4,TRX5,TRX6,'; Sections := Sections + 'TRX,TRX1,TRX2,TRX3,TRX4,TRX5,TRX6,';
if cmbStoreRotorControl.ItemIndex>0 then if cmbStoreRotorControl.ItemIndex>0 then
Sections := Sections + 'ROT,ROT1,ROT2,'; Sections := Sections + 'ROT,ROT1,ROT2,';
if cmbStoreModes.ItemIndex>=0 then if cmbStoreModes.ItemIndex>0 then
Sections := Sections + 'Band1,Band2,Band3,Band4,Band5,Band6,Modes,'; Sections := Sections + 'Band1,Band2,Band3,Band4,Band5,Band6,Modes,';
if cmbStoreExport.ItemIndex>0 then if cmbStoreExport.ItemIndex>0 then
Sections := Sections + 'Export,'; Sections := Sections + 'Export,';

View File

@ -7164,10 +7164,10 @@ begin
CWint.Close; CWint.Close;
FreeAndNil(CWint) FreeAndNil(CWint)
end; end;
UseSpeed:=0; //show zero when pot speed or no keyer
n:=intToStr(frmTRXControl.cmbRig.ItemIndex); n:=intToStr(frmTRXControl.cmbRig.ItemIndex);
if ((dmData.DebugLevel>=1 ) or ((abs(dmData.DebugLevel) and 8) = 8 )) then Writeln('Radio'+n+' CW settings:'); if ((dmData.DebugLevel>=1 ) or ((abs(dmData.DebugLevel) and 8) = 8 )) then Writeln('Radio'+n+' CW settings:');
KeyerType := cqrini.ReadInteger('CW','Type'+n,0); KeyerType := cqrini.ReadInteger('CW'+n,'Type',0);
if ((dmData.DebugLevel>=1 ) or ((abs(dmData.DebugLevel) and 8) = 8 )) then Writeln('CW init keyer type:',KeyerType); if ((dmData.DebugLevel>=1 ) or ((abs(dmData.DebugLevel) and 8) = 8 )) then Writeln('CW init keyer type:',KeyerType);
case KeyerType of case KeyerType of
1 : begin 1 : begin
@ -7175,30 +7175,33 @@ begin
CWint.DebugMode := dmData.DebugLevel>=1; CWint.DebugMode := dmData.DebugLevel>=1;
if dmData.DebugLevel < 0 then if dmData.DebugLevel < 0 then
CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 ); CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 );
CWint.Port := cqrini.ReadString('CW','wk_port'+n,''); CWint.Port := cqrini.ReadString('CW'+n,'wk_port','');
CWint.Device := cqrini.ReadString('CW','wk_port'+n,''); CWint.Device := cqrini.ReadString('CW'+n,'wk_port','');
CWint.PortSpeed := 1200; CWint.PortSpeed := 1200;
UseSpeed := cqrini.ReadInteger('CW','wk_speed',30); if not cqrini.ReadBool('CW'+n,'PotSpeed',False) then
UseSpeed := cqrini.ReadInteger('CW'+n,'wk_speed',30)
else
UseSpeed:=-1;
end; end;
2 : begin 2 : begin
CWint := TCWDaemon.Create; CWint := TCWDaemon.Create;
CWint.DebugMode := dmData.DebugLevel>=1; CWint.DebugMode := dmData.DebugLevel>=1;
if dmData.DebugLevel < 0 then if dmData.DebugLevel < 0 then
CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 ); CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 );
CWint.Port := cqrini.ReadString('CW','cw_port'+n,''); CWint.Port := cqrini.ReadString('CW'+n,'cw_port','');
CWint.Device := cqrini.ReadString('CW','cw_address',''); CWint.Device := cqrini.ReadString('CW'+n,'cw_address','');
CWint.PortSpeed := 0; CWint.PortSpeed := 0;
UseSpeed := cqrini.ReadInteger('CW','cw_speed',30); UseSpeed := cqrini.ReadInteger('CW'+n,'cw_speed',30);
end; end;
3 : begin 3 : begin
CWint := TCWK3NG.Create; CWint := TCWK3NG.Create;
CWint.DebugMode := dmData.DebugLevel>=1; CWint.DebugMode := dmData.DebugLevel>=1;
if dmData.DebugLevel < 0 then if dmData.DebugLevel < 0 then
CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 ); CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 );
CWint.Port := cqrini.ReadString('CW','K3NGPort'+n,''); CWint.Port := cqrini.ReadString('CW'+n,'K3NGPort'+n,'');
CWint.Device := cqrini.ReadString('CW','K3NGPort'+n,''); CWint.Device := cqrini.ReadString('CW'+n,'K3NGPort'+n,'');
CWint.PortSpeed := cqrini.ReadInteger('CW','K3NGSerSpeed',115200); CWint.PortSpeed := cqrini.ReadInteger('CW'+n,'K3NGSerSpeed',115200);
UseSpeed := cqrini.ReadInteger('CW','K3NGSpeed',30); UseSpeed := cqrini.ReadInteger('CW'+n,'K3NGSpeed',30);
end; end;
4 : begin 4 : begin
CWint := TCWHamLib.Create; CWint := TCWHamLib.Create;
@ -7207,16 +7210,16 @@ begin
CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 ); CWint.DebugMode := CWint.DebugMode or ((abs(dmData.DebugLevel) and 8) = 8 );
CWint.Port := cqrini.ReadString('TRX'+n,'RigCtldPort','4532'); CWint.Port := cqrini.ReadString('TRX'+n,'RigCtldPort','4532');
CWint.Device := cqrini.ReadString('TRX'+n,'host','localhost'); CWint.Device := cqrini.ReadString('TRX'+n,'host','localhost');
UseSpeed := cqrini.ReadInteger('CW','HamLibSpeed',30); UseSpeed := cqrini.ReadInteger('CW'+n,'HamLibSpeed',30);
end; end;
end; //case end; //case
if KeyerType > 0 then if KeyerType > 0 then
Begin Begin
CWint.Open; CWint.Open;
CWint.SetSpeed(UseSpeed); if UseSpeed>0 then CWint.SetSpeed(UseSpeed);
sbNewQSO.Panels[4].Text := IntToStr(UseSpeed) + 'WPM';
if frmCWType.Showing then frmCWType.edtSpeed.Value := UseSpeed;
end; end;
sbNewQSO.Panels[4].Text := IntToStr(UseSpeed) + 'WPM';
if frmCWType.Showing then frmCWType.edtSpeed.Value := UseSpeed;
end; end;
procedure TfrmNewQSO.OnBandMapClick(Sender:TObject;Call,Mode: String;Freq:Currency); procedure TfrmNewQSO.OnBandMapClick(Sender:TObject;Call,Mode: String;Freq:Currency);

View File

@ -23,9 +23,9 @@ object frmPreferences: TfrmPreferences
Height = 712 Height = 712
Top = 0 Top = 0
Width = 883 Width = 883
ActivePage = tabModes ActivePage = tabCWInterface
Align = alClient Align = alClient
TabIndex = 7 TabIndex = 19
TabOrder = 0 TabOrder = 0
OnChange = pgPreferencesChange OnChange = pgPreferencesChange
object tabProgram: TTabSheet object tabProgram: TTabSheet
@ -2142,7 +2142,7 @@ object frmPreferences: TfrmPreferences
BorderSpacing.Left = 6 BorderSpacing.Left = 6
BorderSpacing.Top = 4 BorderSpacing.Top = 4
Caption = ' rigctld ' Caption = ' rigctld '
ClientHeight = 70 ClientHeight = 86
ClientWidth = 655 ClientWidth = 655
TabOrder = 0 TabOrder = 0
object lblRigctdPath: TLabel object lblRigctdPath: TLabel
@ -2400,7 +2400,7 @@ object frmPreferences: TfrmPreferences
Width = 511 Width = 511
BorderSpacing.Top = 3 BorderSpacing.Top = 3
Caption = 'Radio one serial parameters' Caption = 'Radio one serial parameters'
ClientHeight = 130 ClientHeight = 146
ClientWidth = 509 ClientWidth = 509
TabOrder = 11 TabOrder = 11
object lblSerialRSpd: TLabel object lblSerialRSpd: TLabel
@ -7153,7 +7153,7 @@ object frmPreferences: TfrmPreferences
Height = 34 Height = 34
Top = 23 Top = 23
Width = 147 Width = 147
OnChange = edtWinPortChange OnChange = edtWinSpeedChange
TabOrder = 0 TabOrder = 0
end end
object edtWinSpeed: TSpinEdit object edtWinSpeed: TSpinEdit
@ -7198,7 +7198,7 @@ object frmPreferences: TfrmPreferences
BorderSpacing.Top = 3 BorderSpacing.Top = 3
MaxValue = 99 MaxValue = 99
MinValue = 5 MinValue = 5
OnChange = edtWinMinSpeedChange OnChange = edtWinSpeedChange
TabOrder = 3 TabOrder = 3
Value = 5 Value = 5
end end
@ -7212,7 +7212,7 @@ object frmPreferences: TfrmPreferences
BorderSpacing.Left = 6 BorderSpacing.Left = 6
MaxValue = 99 MaxValue = 99
MinValue = 5 MinValue = 5
OnChange = edtWinMaxSpeedChange OnChange = edtWinSpeedChange
TabOrder = 4 TabOrder = 4
Value = 60 Value = 60
end end
@ -7287,6 +7287,7 @@ object frmPreferences: TfrmPreferences
Height = 34 Height = 34
Top = 23 Top = 23
Width = 139 Width = 139
OnChange = edtWinSpeedChange
TabOrder = 0 TabOrder = 0
end end
object edtCWPort: TEdit object edtCWPort: TEdit
@ -7297,6 +7298,7 @@ object frmPreferences: TfrmPreferences
Height = 34 Height = 34
Top = 23 Top = 23
Width = 80 Width = 80
OnChange = edtWinSpeedChange
TabOrder = 1 TabOrder = 1
end end
object edtCWSpeed: TSpinEdit object edtCWSpeed: TSpinEdit
@ -7309,6 +7311,7 @@ object frmPreferences: TfrmPreferences
Width = 50 Width = 50
MaxValue = 99 MaxValue = 99
MinValue = 5 MinValue = 5
OnChange = edtWinSpeedChange
TabOrder = 2 TabOrder = 2
Value = 5 Value = 5
end end
@ -7384,7 +7387,7 @@ object frmPreferences: TfrmPreferences
Height = 34 Height = 34
Top = 23 Top = 23
Width = 147 Width = 147
OnChange = edtWinPortChange OnChange = edtWinSpeedChange
TabOrder = 0 TabOrder = 0
end end
object edtK3NGSpeed: TSpinEdit object edtK3NGSpeed: TSpinEdit
@ -7409,7 +7412,7 @@ object frmPreferences: TfrmPreferences
Height = 34 Height = 34
Top = 23 Top = 23
Width = 118 Width = 118
OnChange = edtK3NGSerSpeedChange OnChange = edtWinSpeedChange
TabOrder = 1 TabOrder = 1
end end
object lblK3NGSerSpeed: TLabel object lblK3NGSerSpeed: TLabel

View File

@ -1082,9 +1082,6 @@ type
procedure edtTxtFilesExit(Sender: TObject); procedure edtTxtFilesExit(Sender: TObject);
procedure edtWebBrowserClick(Sender: TObject); procedure edtWebBrowserClick(Sender: TObject);
procedure edtWebBrowserExit(Sender: TObject); procedure edtWebBrowserExit(Sender: TObject);
procedure edtWinMaxSpeedChange(Sender: TObject);
procedure edtWinMinSpeedChange(Sender: TObject);
procedure edtWinPortChange(Sender: TObject);
procedure edtWinSpeedChange(Sender: TObject); procedure edtWinSpeedChange(Sender: TObject);
procedure edtXplanetLocChange(Sender: TObject); procedure edtXplanetLocChange(Sender: TObject);
procedure lbPreferencesClick(Sender: TObject); procedure lbPreferencesClick(Sender: TObject);
@ -2290,6 +2287,7 @@ begin
edtWinSpeed.Enabled := False edtWinSpeed.Enabled := False
else else
edtWinSpeed.Enabled := True; edtWinSpeed.Enabled := True;
CWKeyerChanged := True
end; end;
procedure TfrmPreferences.chkProfileLocatorClick(Sender: TObject); procedure TfrmPreferences.chkProfileLocatorClick(Sender: TObject);
@ -2424,6 +2422,7 @@ begin
if cbNoKeyerReset.Checked if cbNoKeyerReset.Checked
and (cmbIfaceType.ItemIndex = 4) //type is HamLib and (cmbIfaceType.ItemIndex = 4) //type is HamLib
then cbNoKeyerReset.Checked := false; //restart is always needed when radio changes then cbNoKeyerReset.Checked := false; //restart is always needed when radio changes
CWKeyerChanged := True
end; end;
procedure TfrmPreferences.cmbIfaceTypeCloseUp(Sender: TObject); procedure TfrmPreferences.cmbIfaceTypeCloseUp(Sender: TObject);
@ -2596,6 +2595,11 @@ begin
edtImgFiles.Text:=SeekExecFile(edtImgFiles.Text,'Find image viewer'); edtImgFiles.Text:=SeekExecFile(edtImgFiles.Text,'Find image viewer');
end; end;
procedure TfrmPreferences.edtK3NGSerSpeedChange(Sender: TObject);
begin
end;
procedure TfrmPreferences.edtPdfFilesExit(Sender: TObject); procedure TfrmPreferences.edtPdfFilesExit(Sender: TObject);
begin begin
if ExtractFilePath(edtPdfFiles.Text)='' then if ExtractFilePath(edtPdfFiles.Text)='' then
@ -2618,11 +2622,6 @@ Begin
Result := odFindBrowser.Filename; Result := odFindBrowser.Filename;
end; end;
procedure TfrmPreferences.edtK3NGSerSpeedChange(Sender: TObject);
begin
CWKeyerChanged := True
end;
procedure TfrmPreferences.edtLocChange(Sender: TObject); procedure TfrmPreferences.edtLocChange(Sender: TObject);
begin begin
edtLoc.Text := dmUtils.StdFormatLocator(edtLoc.Text); edtLoc.Text := dmUtils.StdFormatLocator(edtLoc.Text);
@ -2724,21 +2723,6 @@ begin
end; end;
end; end;
procedure TfrmPreferences.edtWinMaxSpeedChange(Sender: TObject);
begin
CWKeyerChanged := True
end;
procedure TfrmPreferences.edtWinMinSpeedChange(Sender: TObject);
begin
CWKeyerChanged := True
end;
procedure TfrmPreferences.edtWinPortChange(Sender: TObject);
begin
CWKeyerChanged := True
end;
procedure TfrmPreferences.edtWinSpeedChange(Sender: TObject); procedure TfrmPreferences.edtWinSpeedChange(Sender: TObject);
begin begin
CWKeyerChanged := True CWKeyerChanged := True
@ -3514,9 +3498,7 @@ Begin
Begin Begin
s:=IntToStr(f); s:=IntToStr(f);
cmbRadioModes.Items.Add(IntToStr(f)+' '+cqrini.ReadString('TRX'+s, 'Desc', '')); cmbRadioModes.Items.Add(IntToStr(f)+' '+cqrini.ReadString('TRX'+s, 'Desc', ''));
//todo set selected mode visible
cmbCWRadio.Items.Add(IntToStr(f)+' '+cqrini.ReadString('TRX'+s, 'Desc', '')); cmbCWRadio.Items.Add(IntToStr(f)+' '+cqrini.ReadString('TRX'+s, 'Desc', ''));
//todo set selected keyer visible
end; end;
cmbRadioNr.ItemIndex:=i; cmbRadioNr.ItemIndex:=i;
@ -3534,6 +3516,9 @@ Begin
cmbCWRadio.ItemIndex:=cmbRadioNr.ItemIndex; cmbCWRadio.ItemIndex:=cmbRadioNr.ItemIndex;
end; end;
LoadBandW(cmbRadioNr.ItemIndex);
LoadCWif(cmbRadioNr.ItemIndex);
end; end;
procedure TfrmPreferences.ClearUnUsedRigs; procedure TfrmPreferences.ClearUnUsedRigs;
var var