Fine tuning

This commit is contained in:
OH1KH 2020-11-20 16:58:19 +02:00
parent 22cf6edb29
commit 49ce4c9847
6 changed files with 220 additions and 148 deletions

View File

@ -278,20 +278,15 @@ You can also switch between memory frequencies with TRXControl's <b>M up</b> and
<img src="img/h121.png"><br><br>
<a name=ah8><h2><strong>Modes</strong></h2></a>
<img src=img/h11.png border=0><br><br>
Here you can set up the default bandwidth for any of the supported modes (CW - SSB - DATA - AM - FM).
Here you can set up the default bandwidth for any of the supported modes (CW - SSB - RTTY - AM - FM).
If your radio is tuned to the corresponding band segment or if you switch the mode on the radio
control panel, CQRLOG will change the bandwidth to the desired value. The bandwidth can be
changed at any time, however a program restart will probably be needed to make the changes
take effect.
<br><strong>Some TRX like don't have support for setting bandwith in HamLib. To get mode bandwidth setting to rig default, set
value to 0 (zero).</strong>
<br><br>You can define data mode and corresponding rig mode command by your needs. Data mode effects to bands/frequencies settings and that way to DXCluster spot colors.
<br>Here we have setting PKTUSB / FT8 as Icom rig needs command PKTUSB for running FT8 and we like to see FT8 DX spots colored by our wkd/needs.
<br>At NewQSO window right click of checbox "Auto"(mode) allows selection where mode received from rig is converted back to user data mode. (Auto+RigMode2DataMode)
<br>Some cases this may be bad. Example: you work fone qsos(SSB) and SSTV qsos using rig mode USB. Then setting Auto+RigMode2DataMode leads all fone qsos set as mode SSTV.
<br><br><strong>User definable digital modes</strong> can be set up in a separate box. Use comma
as a separator, ie. MYMODE1,MYMODE2 etc.<br>
take effect.<br><br>
<strong>User definable digital modes</strong> can be set up in a separate box. Use comma
as a separator, ie. BPSK31,QPSK64,OLIVIA,CONTESTIA etc.<br>
Some <strong>TRX like ICOM don't have support for this in HamLib. To get mode settings work, set
all values to 0 (zero).</strong>
<p align=center><img src=img/line.png></p>
<a name=ah9><h2><strong>QTH Profiles</strong></h2></a>
<img src=img/h12.png border=0><br><br>
@ -682,7 +677,7 @@ There are no known dependencies issues.<br><br>
<li><strong>Signal strength</strong> How strong you are will be clear very quickly when you look
at the map with the dots in different colours. Which colour will be used can be set here.</li>
<li><strong>After window opens</strong> - check these options if you want to autoconnect
to RBN when the Grayline/RBN Monitor window opens. If you have closed cqrlog with window(s) open they will open at next program start
to RBN when the Grayline and/or RBN Monitor window opens. If you have closed cqrlog with window(s) open they will open at next program start
and so also connection is made.</li>
<ul>
<li><strong>Autoconnect RBN Grayline</strong> connects Grayline map to RBN.</li>
@ -727,19 +722,10 @@ There are no known dependencies issues.<br><br>
if you don't want to have Log upload status window visible, check this option and
windows will be closed after upload to online log is finished.
<br><br>
<strong>Ignore changes caused by LoTW/eQSL upload or download</strong>
<br><strong>Ignore changes caused by QSL sent/received</strong> (marked by hand or label printing)
<br><strong>Ignore changes caused by QSO edit</strong>
- every change of
<strong>Ignore changes caused by LoTW/eQSL upload or download</strong> - every change of
a qso will cause a new upload to the online log database. Sometimes it can be useful to
have the opportunity to disable it when upload/download data to LoTW/eQSL. These changes
won't be logged and QSO won't be uploaded to any online log.
<br><br>
<img src="img/h1116b.png"><br>
Uploading can also be controlled from <strong>QSO list/Online log</strong>-menu where you can mark QSO(s) uploaded or remove all triggers that would cause upload on next time(if you do not use immediate uploading)<br>
</div>
<p align=center><img src=img/line.png></p>
<br>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

@ -219,9 +219,9 @@ object frmGrayline: TfrmGrayline
left = 158
top = 32
end
object tmrRemoveSpots: TTimer
object tmrRemoveDots: TTimer
Interval = 60000
OnTimer = tmrRemoveSpotsTimer
OnTimer = tmrRemoveDotsTimer
left = 40
top = 32
end

View File

@ -62,7 +62,7 @@ type
sbtnGrayLine : TSpeedButton;
tmrAutoConnect : TTimer;
tmrGrayLine: TTimer;
tmrRemoveSpots: TTimer;
tmrRemoveDots: TTimer;
procedure acConnectExecute(Sender : TObject);
procedure acLinkToRbnMonitorExecute(Sender: TObject);
procedure acShowStatusBarExecute(Sender : TObject);
@ -77,7 +77,7 @@ type
procedure sbtnGrayLineClick(Sender : TObject);
procedure tmrAutoConnectTimer(Sender : TObject);
procedure tmrGrayLineTimer(Sender: TObject);
procedure tmrRemoveSpotsTimer(Sender: TObject);
procedure tmrRemoveDotsTimer(Sender: TObject);
private
csRBN : TRTLCriticalSection;
RBNThread : TRBNThread;
@ -387,7 +387,7 @@ begin
finally
LeaveCriticalsection(cs)
end;
//RemoveOldSpots; done now by tmrRemoveSpots
//RemoveOldSpots; done now by tmrRemoveDots
Synchronize(@frmGrayline.SynRBN);
sleep(1000)
end;
@ -410,18 +410,20 @@ begin
PathDelim+'images'+PathDelim+'grayline.bmp');
ob:=new(Pgrayline,init(ImageFile));
tmrRemoveSpots.Interval:= cqrini.ReadInteger('RBN','deleteAfter',60)*1000;
tmrRemoveSpots.Enabled:=true;
tmrRemoveDots.Interval:= cqrini.ReadInteger('RBN','deleteAfter',60)*1000;
tmrRemoveDots.Enabled:=true;
end;
procedure TfrmGrayline.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
if RBNThread<>nil then
Begin
RBNThread.lTelnet.Disconnect(true);
RBNThread.Terminate;
end;
cqrini.WriteBool('Grayline','Statusbar',sbGrayLine.Visible);
dmUtils.SaveWindowPos(frmGrayline);
tmrGrayLine.Enabled := False
end;
procedure TfrmGrayline.acShowStatusBarExecute(Sender : TObject);
@ -474,6 +476,9 @@ end;
procedure TfrmGrayline.FormCloseQuery(Sender: TObject; var CanClose: boolean);
begin
tmrGrayLine.Enabled := False;
tmrAutoConnect.Enabled:=False;
tmrRemoveDots.Enabled:=False;
SavePosition;
end;
procedure TfrmGrayline.FormDestroy(Sender: TObject);
@ -518,10 +523,11 @@ begin
dmUtils.LoadWindowPos(frmGrayline);
sbGrayLine.Visible := cqrini.ReadBool('Grayline','Statusbar',True);
acShowStatusBar.Checked := sbGrayLine.Visible;
sbGrayLine.SimpleText := 'Disconnected';
tmrGrayLine.Enabled := True;
rbn_status :='Disconnected';
sbGrayLine.SimpleText := rbn_status;
tmrGrayLine.Enabled := True;
tmrGrayLineTimer(nil);
tmrAutoConnect.Enabled := True
tmrAutoConnect.Enabled := True
end;
procedure TfrmGrayline.sbtnGrayLineClick(Sender : TObject);
@ -536,7 +542,7 @@ end;
procedure TfrmGrayline.tmrAutoConnectTimer(Sender : TObject);
begin
if (rbn_status='Connected') or (rbn_status='Linked') then exit;
if (rbn_status='Connected') or (rbn_status='Linked to RBNMonitor' ) then exit;
if cqrini.ReadBool('RBN','AutoLink',false) then
Begin
acLinkToRbnMonitorExecute(nil);
@ -551,7 +557,7 @@ begin
Refresh
end;
procedure TfrmGrayline.tmrRemoveSpotsTimer(Sender: TObject);
procedure TfrmGrayline.tmrRemoveDotsTimer(Sender: TObject);
begin
RemoveOldSpots
end;
@ -676,9 +682,9 @@ var
time : TDateTime;
delAfter: word;
begin
tmrRemoveSpots.Enabled:=false;
tmrRemoveDots.Enabled:=false;
delAfter := cqrini.ReadInteger('RBN','deleteAfter',60);
tmrRemoveSpots.Interval:=delAfter*1000;
tmrRemoveDots.Interval:=delAfter*1000;
time := now;
for i:=1 to MAX_ITEMS do
begin
@ -686,7 +692,7 @@ begin
frmGrayline.RBNSpotList[i].band := ''
end;
SynRBN;
tmrRemoveSpots.Enabled:=true;
tmrRemoveDots.Enabled:=true;
end;
procedure TfrmGrayline.AddSpotToList(spot : String);

View File

@ -17,7 +17,7 @@ object frmPreferences: TfrmPreferences
OnCreate = FormCreate
OnShow = FormShow
Position = poMainFormCenter
LCLVersion = '2.0.4.0'
LCLVersion = '2.0.8.0'
object pgPreferences: TPageControl
Left = 160
Height = 703
@ -8036,117 +8036,165 @@ object frmPreferences: TfrmPreferences
ClientHeight = 650
ClientWidth = 700
object chkRBNAutoConn: TCheckBox
Left = 368
AnchorSideLeft.Control = lblRbnWindowOpen
AnchorSideTop.Control = cmbCl10db
AnchorSideTop.Side = asrCenter
Left = 404
Height = 23
Top = 207
Top = 212
Width = 198
Caption = 'Autoconnect RBN Grayline'
TabOrder = 0
end
object edtRBNLogin: TEdit
Left = 92
AnchorSideLeft.Control = edtRBNServer
AnchorSideTop.Control = edtRBNServer
AnchorSideTop.Side = asrBottom
Left = 94
Height = 33
Top = 102
Top = 90
Width = 101
CharCase = ecUppercase
TabOrder = 1
end
object Label166: TLabel
Left = 20
object lblRbnLogin: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = edtRBNLogin
AnchorSideTop.Side = asrCenter
Left = 24
Height = 15
Top = 107
Top = 99
Width = 39
Caption = 'Login:'
ParentColor = False
end
object Label167: TLabel
Left = 20
object lblRbnWatchFor: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = edtWatchFor
AnchorSideTop.Side = asrCenter
Left = 24
Height = 15
Top = 139
Top = 132
Width = 67
Caption = 'Watch for:'
ParentColor = False
end
object edtWatchFor: TEdit
Left = 92
AnchorSideLeft.Control = edtRBNLogin
AnchorSideTop.Control = edtRBNLogin
AnchorSideTop.Side = asrBottom
Left = 94
Height = 33
Top = 134
Top = 123
Width = 101
CharCase = ecUppercase
TabOrder = 2
end
object Label168: TLabel
Left = 212
object lblRbnLoginHint: TLabel
AnchorSideLeft.Control = edtRBNLogin
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = edtRBNLogin
AnchorSideTop.Side = asrCenter
Left = 201
Height = 15
Top = 107
Top = 99
Width = 175
BorderSpacing.Left = 6
Caption = '(usually your own callsign)'
ParentColor = False
end
object Label169: TLabel
Left = 212
object lblRbnWatchForHint: TLabel
AnchorSideLeft.Control = edtWatchFor
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = edtWatchFor
AnchorSideTop.Side = asrCenter
Left = 201
Height = 15
Top = 139
Top = 132
Width = 367
BorderSpacing.Left = 6
Caption = '(callsign you are watching for, also can be your callsign)'
ParentColor = False
end
object Label170: TLabel
Left = 15
object lblRbnHeader: TLabel
AnchorSideLeft.Control = tabRBN
AnchorSideTop.Control = tabRBN
Left = 24
Height = 30
Top = 14
Top = 12
Width = 567
BorderSpacing.Left = 24
BorderSpacing.Top = 12
Caption = 'CQRLOG can receive spots from RBN and show it on Gray line map. It''s very useful '#10'especially when you are calling CQ and want to see where your signal can be received.'
ParentColor = False
end
object Label171: TLabel
Left = 20
object lblRbnSignal: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = edtWatchFor
AnchorSideTop.Side = asrBottom
Left = 24
Height = 15
Top = 182
Top = 180
Width = 92
BorderSpacing.Top = 24
Caption = 'Signal strench'
ParentColor = False
end
object Label172: TLabel
Left = 212
object lblRbnColor: TLabel
AnchorSideLeft.Control = lblRbnWatchForHint
AnchorSideTop.Control = lblRbnSignal
Left = 201
Height = 15
Top = 182
Top = 180
Width = 34
Caption = 'Color'
ParentColor = False
end
object Label173: TLabel
Left = 28
object lblRbnDb1: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = cmbCl10db
AnchorSideTop.Side = asrCenter
Left = 24
Height = 15
Top = 215
Top = 216
Width = 60
Caption = '0 ... 10db'
ParentColor = False
end
object cl10db: TColorBox
Left = 212
object cmbCl10db: TColorBox
AnchorSideLeft.Control = lblRbnColor
AnchorSideTop.Control = lblRbnColor
AnchorSideTop.Side = asrBottom
Left = 201
Height = 32
Top = 204
Top = 207
Width = 137
DefaultColorColor = clWhite
Selected = clWhite
Style = [cbStandardColors, cbExtendedColors, cbSystemColors, cbPrettyNames]
BorderSpacing.Top = 12
Color = clWhite
ItemHeight = 28
TabOrder = 3
end
object Label174: TLabel
Left = 28
object lblRbnDb2: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = cmbCl20db
AnchorSideTop.Side = asrCenter
Left = 24
Height = 15
Top = 248
Width = 68
Caption = '11 ... 20db'
ParentColor = False
end
object cl20db: TColorBox
Left = 212
object cmbCl20db: TColorBox
AnchorSideLeft.Control = cmbCl10db
AnchorSideTop.Control = cmbCl10db
AnchorSideTop.Side = asrBottom
Left = 201
Height = 32
Top = 237
Top = 239
Width = 137
DefaultColorColor = clWhite
Selected = clPurple
@ -8155,18 +8203,24 @@ object frmPreferences: TfrmPreferences
ItemHeight = 28
TabOrder = 4
end
object Label175: TLabel
Left = 28
object lblRbnDb3: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = cmbCl30db
AnchorSideTop.Side = asrCenter
Left = 24
Height = 15
Top = 284
Top = 280
Width = 68
Caption = '21 ... 30db'
ParentColor = False
end
object cl30db: TColorBox
Left = 212
object cmbCl30db: TColorBox
AnchorSideLeft.Control = cmbCl20db
AnchorSideTop.Control = cmbCl20db
AnchorSideTop.Side = asrBottom
Left = 201
Height = 32
Top = 272
Top = 271
Width = 137
DefaultColorColor = clWhite
Selected = clMaroon
@ -8175,18 +8229,24 @@ object frmPreferences: TfrmPreferences
ItemHeight = 28
TabOrder = 5
end
object Label176: TLabel
Left = 28
object lblRbnDb4: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = cmbClOver30db
AnchorSideTop.Side = asrCenter
Left = 24
Height = 15
Top = 319
Top = 312
Width = 66
Caption = 'over 30dB'
ParentColor = False
end
object clOver30db: TColorBox
Left = 212
object cmbClOver30db: TColorBox
AnchorSideLeft.Control = cmbCl30db
AnchorSideTop.Control = cmbCl30db
AnchorSideTop.Side = asrBottom
Left = 201
Height = 32
Top = 309
Top = 303
Width = 137
DefaultColorColor = clWhite
Selected = clRed
@ -8195,74 +8255,95 @@ object frmPreferences: TfrmPreferences
ItemHeight = 28
TabOrder = 6
end
object Label177: TLabel
Left = 368
Height = 15
Top = 319
Width = 182
Caption = 'Delete old information after'
ParentColor = False
end
object edtDelAfter: TEdit
Left = 560
AnchorSideLeft.Control = lblRbnWindowOpen
AnchorSideTop.Control = cmbClOver30db
AnchorSideTop.Side = asrCenter
Left = 404
Height = 33
Top = 308
Top = 303
Width = 40
TabOrder = 7
Text = '60'
end
object Label178: TLabel
Left = 608
object lblRbnDeleteAfterSec: TLabel
AnchorSideLeft.Control = edtDelAfter
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = cmbClOver30db
AnchorSideTop.Side = asrCenter
Left = 445
Height = 15
Top = 319
Width = 53
Caption = 'seconds'
Top = 312
Width = 186
BorderSpacing.Left = 1
Caption = 'seconds view time for dot(s)'
ParentColor = False
end
object Label190: TLabel
Left = 20
object lnlRbnServer: TLabel
AnchorSideLeft.Control = lblRbnHeader
AnchorSideTop.Control = lblRbnHeader
AnchorSideTop.Side = asrBottom
Left = 24
Height = 15
Top = 75
Top = 66
Width = 46
BorderSpacing.Top = 24
Caption = 'Server:'
ParentColor = False
end
object edtRBNServer: TEdit
Left = 92
AnchorSideLeft.Control = lnlRbnServer
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = lnlRbnServer
AnchorSideTop.Side = asrCenter
Left = 94
Height = 33
Top = 70
Top = 57
Width = 304
BorderSpacing.Left = 24
TabOrder = 8
Text = 'edtRBNServer'
end
object Label191: TLabel
Left = 416
object lblRbnAdrFormat: TLabel
AnchorSideLeft.Control = edtRBNServer
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = lnlRbnServer
AnchorSideTop.Side = asrCenter
Left = 404
Height = 15
Top = 75
Top = 66
Width = 71
BorderSpacing.Left = 6
Caption = 'server:port'
ParentColor = False
end
object lblAutoCon: TLabel
Left = 368
object lblRbnWindowOpen: TLabel
AnchorSideLeft.Control = lblRbnAdrFormat
AnchorSideTop.Control = lblRbnSignal
Left = 404
Height = 15
Top = 182
Width = 128
Top = 180
Width = 132
Caption = 'After window opens:'
ParentColor = False
end
object chkRBNMAutoConn: TCheckBox
Left = 368
AnchorSideLeft.Control = lblRbnWindowOpen
AnchorSideTop.Control = cmbCl20db
AnchorSideTop.Side = asrCenter
Left = 404
Height = 23
Top = 240
Top = 244
Width = 193
Caption = 'Autoconnect RBN Monitor'
TabOrder = 9
end
object chkRBNLink: TCheckBox
Left = 368
AnchorSideLeft.Control = lblRbnWindowOpen
AnchorSideTop.Control = cmbCl30db
Left = 404
Height = 23
Top = 276
Top = 271
Width = 216
Caption = 'Link Grayline to RBN monitor'
OnChange = chkRBNLinkChange

View File

@ -421,9 +421,9 @@ type
chkWAZ3: TCheckBox;
chkWAZ4: TCheckBox;
chkWAZ5: TCheckBox;
cl20db : TColorBox;
cl30db : TColorBox;
clOver30db : TColorBox;
cmbCl20db : TColorBox;
cmbCl30db : TColorBox;
cmbClOver30db : TColorBox;
clBoxBandITU: TColorBox;
clboxQSLIOTA: TColorBox;
clboxNewITU: TColorBox;
@ -496,7 +496,7 @@ type
cmbXplanetColor: TColorBox;
cmbLoTWBckColor: TColorBox;
cmbDataBitsR1: TComboBox;
cl10db : TColorBox;
cmbCl10db : TColorBox;
cmbModelRig1: TComboBox;
DateEditCall: TDateEdit;
DateEditLoc: TDateEdit;
@ -708,7 +708,7 @@ type
Label26: TLabel;
Label80: TLabel;
Label81: TLabel;
lblAutoCon: TLabel;
lblRbnWindowOpen: TLabel;
lblCWPort2: TLabel;
lblHamlib: TLabel;
lblHamlib1: TLabel;
@ -793,20 +793,19 @@ type
lblParity2: TLabel;
lblDTR2: TLabel;
lblRTS2: TLabel;
Label166 : TLabel;
Label167 : TLabel;
Label168 : TLabel;
Label169 : TLabel;
lblRbnLogin : TLabel;
lblRbnWatchFor : TLabel;
lblRbnLoginHint : TLabel;
lblRbnWatchForHint : TLabel;
Label17: TLabel;
Label170 : TLabel;
Label171 : TLabel;
Label172 : TLabel;
Label173 : TLabel;
Label174 : TLabel;
Label175 : TLabel;
Label176 : TLabel;
Label177 : TLabel;
Label178 : TLabel;
lblRbnHeader : TLabel;
lblRbnSignal : TLabel;
lblRbnColor : TLabel;
lblRbnDb1 : TLabel;
lblRbnDb2 : TLabel;
lblRbnDb3 : TLabel;
lblRbnDb4 : TLabel;
lblRbnDeleteAfterSec : TLabel;
Label179: TLabel;
Label18: TLabel;
Label180: TLabel;
@ -819,8 +818,8 @@ type
Label187: TLabel;
Label188: TLabel;
Label189: TLabel;
Label190 : TLabel;
Label191 : TLabel;
lnlRbnServer : TLabel;
lblRbnAdrFormat : TLabel;
Label192: TLabel;
lblK3NGPort: TLabel;
lblK3NGSpeed: TLabel;
@ -1593,10 +1592,10 @@ begin
cqrini.WriteString('CallBook', 'CBUser', edtCbUser.Text);
cqrini.WriteString('CallBook', 'CBPass', edtCbPass.Text);
cqrini.WriteInteger('RBN','10db',cl10db.Selected);
cqrini.WriteInteger('RBN','20db',cl20db.Selected);
cqrini.WriteInteger('RBN','30db',cl30db.Selected);
cqrini.WriteInteger('RBN','over30db',clOver30db.Selected);
cqrini.WriteInteger('RBN','10db',cmbCl10db.Selected);
cqrini.WriteInteger('RBN','20db',cmbCl20db.Selected);
cqrini.WriteInteger('RBN','30db',cmbCl30db.Selected);
cqrini.WriteInteger('RBN','over30db',cmbClOver30db.Selected);
cqrini.WriteString('RBN','login',edtRBNLogin.Text);
cqrini.WriteString('RBN','watch',edtWatchFor.Text);
cqrini.WriteBool('RBN','AutoConnect',chkRBNAutoConn.Checked);
@ -3109,10 +3108,10 @@ begin
rbHamQTH.Checked := cqrini.ReadBool('Callbook', 'HamQTH', True);
rbQRZ.Checked := cqrini.ReadBool('Callbook', 'QRZ', False);
cl10db.Selected := cqrini.ReadInteger('RBN','10db',clWhite);
cl20db.Selected := cqrini.ReadInteger('RBN','20db',clPurple);
cl30db.Selected := cqrini.ReadInteger('RBN','30db',clMaroon);
clOver30db.Selected := cqrini.ReadInteger('RBN','over30db',clRed);
cmbCl10db.Selected := cqrini.ReadInteger('RBN','10db',clWhite);
cmbCl20db.Selected := cqrini.ReadInteger('RBN','20db',clPurple);
cmbCl30db.Selected := cqrini.ReadInteger('RBN','30db',clMaroon);
cmbClOver30db.Selected := cqrini.ReadInteger('RBN','over30db',clRed);
edtRBNLogin.Text := cqrini.ReadString('RBN','login','');
edtWatchFor.Text := cqrini.ReadString('RBN','watch','');
chkRBNAutoConn.Checked := cqrini.ReadBool('RBN','AutoConnect',False);