mirror of
https://github.com/ok2cqr/cqrlog.git
synced 2024-09-21 10:27:17 +00:00
Merge pull request #340 from OH1KH/sqash_split_with_xit
Added TX split support
This commit is contained in:
commit
d6bbec1dd9
12
help/h1.html
12
help/h1.html
@ -238,10 +238,16 @@
|
||||
The default frequencies which the radio tunes if you click a band button in the 'TRX control'
|
||||
panel can be changed to your preferences. The mode is switched in accordance to the band plan,
|
||||
there is actually a separate set of default frequencies for each CW, SSB, RTTY, AM and FM modes.
|
||||
Click the 'Change default frequencies' button and set up frequencies of your choice.
|
||||
Click the 'Change default frequencies' button and set up frequencies of your choice.<br><br>
|
||||
<strong>Split settings</strong><br>
|
||||
Split TX operation is made by using rig's XIT feature if rig supports it. Then there is no need to set both vfos for qso, just one and do the splitting with XIT.
|
||||
<br>Split is activated from NewQSO with keys Ctrl-1 ... Ctrl-9.
|
||||
<br>Ctrl-0 will disable XIT.
|
||||
<br>Ctrl-9 has a random value 0-990Hz that is added to setting if split is up. If split is down it is subtracted.<br>
|
||||
|
||||
</div>
|
||||
<br>
|
||||
<img src=img/h100.png border=0><br>
|
||||
<img src=img/h100.png border=0> <img src=img/h100b.png border=0><br>
|
||||
|
||||
<a name=ah7b><h2><strong>ROT Control</strong></h2></a>
|
||||
<img src=img/h10b.png border=0><br><br>
|
||||
@ -688,7 +694,7 @@ There are no known dependencies issues.<br><br>
|
||||
which will inform you about upload progress.
|
||||
<strong>Upload QSO data immediately after save, update or delete</strong> means that every
|
||||
insert/update or delete will be uploaded automatically. But if you change something in
|
||||
QSO list window with hot keys e.g. CTRL+S, CTRL+W etc. and/or download data
|
||||
QSO list window with hot keys e.g. Ctrl-S, Ctrl-W etc. and/or download data
|
||||
from eQSL/LoTW, changes won't be uploaded. All will be uploaded after you save/delete QSO
|
||||
or if you choose Online log and Upload to all online logs menu.<br>
|
||||
|
||||
|
@ -29,11 +29,19 @@
|
||||
<div align="left"><strong>CQRLOG for LINUX by OK7AN & OK1RR</strong></div>
|
||||
<p align=center><img src=img/line.png></p>
|
||||
<a name="ah16"><h2><strong>Keys and shortcuts</strong></h2></a>
|
||||
<strong>New QSO Windows/Logging screen</strong><br><br>
|
||||
<table width="99%" border="0" cellpadding="4" cellspacing="0">
|
||||
<strong>When "New QSO" window is active:</strong><br><br>
|
||||
<table>
|
||||
<tr>
|
||||
<td valign="top"><img src="img/bulb.png"></td>
|
||||
<td bgcolor=ccffff width="100%">
|
||||
<strong><font color="blue">The "New QSO" is the logging screen!</font></strong>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<br><br><table width="99%" border="0" cellpadding="4" cellspacing="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="35%">2x ESC or Ctrl+F2</td>
|
||||
<td width="35%">2x ESC or Ctrl-F2</td>
|
||||
<td width="65%">Empty all fields and prepare program for a new QSO</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -44,17 +52,26 @@
|
||||
<td width="35%">PgDn</td>
|
||||
<td width="65%">CW Speed -2 WPM (QRS)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td width="35%">F11</td>
|
||||
<td width="65%">QRZ/HamQTH Callbook (call in the field)</td>
|
||||
</tr>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-1...Ctrl-9</td>
|
||||
<td width="65%">Set split using XIT if rig supports it. Value 0 - 9999Hz UP/DOWN
|
||||
<br>Ctrl-9 will add random value 0 - 990Hz to setting. Subtract if split is DOWN
|
||||
<br>Keys work also when TRXcontrol window is active</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-1 ... Ctrl-9</td>
|
||||
<td width="65%">Set split on trx with 1 ... 9 kHz via VFO A and VFO B</td>
|
||||
<td width="35%">Ctrl-0</td>
|
||||
<td width="65%">Disables XIT
|
||||
<br>Key works also when TRXcontrol window is active</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-A</td>
|
||||
@ -66,7 +83,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-H</td>
|
||||
<td width="65%">Open help</td>
|
||||
<td width="65%">Show help</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-I</td>
|
||||
@ -120,17 +137,13 @@
|
||||
<td width="35%">Ctrl-Z</td>
|
||||
<td width="65%">Scroll back DXCluster commands (5 stored)</td>
|
||||
</tr>
|
||||
</tr>
|
||||
<td> </td>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">ALT-F2</td>
|
||||
<td width="65%">execute New QSO</td>
|
||||
</tr>
|
||||
<td> </td>
|
||||
<tr>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td width="35%">ALT-B</td>
|
||||
<td width="65%"><a href="h30.html#m3">Memory down</a></td>
|
||||
@ -165,12 +178,12 @@
|
||||
</table>
|
||||
<br>
|
||||
<p align=center><img src=img/line.png></p>
|
||||
<strong>QSO list</strong><br><br>
|
||||
<strong>When "QSO list" window is active:</strong><br><br>
|
||||
<table>
|
||||
<tr>
|
||||
<td valign="top"><img src="img/bulb.png"></td>
|
||||
<td bgcolor=ccffff width="100%">
|
||||
<strong><font color="blue">The QSO list is the main screen for maintenance!</font></strong>
|
||||
<strong><font color="blue">The "QSO list" is the main screen for maintenance!</font></strong>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -236,6 +249,10 @@
|
||||
<td width="35%">Ctrl-F</td>
|
||||
<td width="65%">Search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-H</td>
|
||||
<td width="65%">Show help</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="35%">Ctrl-P</td>
|
||||
<td width="65%">Preferences</td>
|
||||
@ -330,7 +347,7 @@
|
||||
<br><br>
|
||||
<img src=img/h25.png border=0><br><br>
|
||||
<div align=justify>
|
||||
Details window dispays details about new/confirmed zones, IOTA details etc. You can open it from <strong> NewQSo/Window/Details</strong> or with Ctrl+I key.
|
||||
Details window dispays details about new/confirmed zones, IOTA details etc. You can open it from <strong> NewQSo/Window/Details</strong> or with Ctrl-I key.
|
||||
</div>
|
||||
<br><br>
|
||||
|
||||
@ -422,7 +439,7 @@ CQRLOG employs <em>fldigi</em> by Dave Freese, W1HKJ and <em>WSJT-X</em> by Joe
|
||||
best digimode softwares available.<br>
|
||||
<br>The most important thing is a <a href="h1.html#ch2">proper setup</a> of the remote mode. For <em>fldigi<em> you have 2 different ways to setup remote .<br>
|
||||
For <em>wsjt-x</em>, setup is done at same tab of preferences as <em>fldigi<em>. For operating with wsjt-x see: <a href="wsjt.html">Wsjt-x operation</a>
|
||||
<br><br> To use <em>fldigi</em>, CQRLOG must be switched to Remote from the menu File -> Remote mode for fldigi(or CTRL+M).
|
||||
<br><br> To use <em>fldigi</em>, CQRLOG must be switched to Remote from the menu File -> Remote mode for fldigi(or Ctrl-M).
|
||||
<br> To use <em>wsjt-x</em>, CQRLOG must be switched to Remote from the menu File -> Remote mode for wsjt.
|
||||
<br> To use <em>N1MM logger</em>, CQRLOG must be switched to Remote from the menu File -> Remote mode for N1MM logger.<br><br>
|
||||
<img src="img/h104.png"><br><br>
|
||||
|
@ -57,7 +57,7 @@ Additionally you can add used Mode and RST sent by pressing button <b>+Mode_Rst<
|
||||
<br>User message can be generated with <b>right</b> mouse click to button. Same predefined macros as in <a href="h26.html#predef"><b>cw messages</b></a> can be used.
|
||||
<br>Moving mouse cursor over button a hint will show the text what is added by pressing button.
|
||||
<br><br><b>Note!</b> There is a limited space to spot info. User string generation warns you about long message, but it is up to you to decide.
|
||||
<br>You must cancel spot sending and reopen it with Ctrl+W to get User message up to date after editing it.
|
||||
<br>You must cancel spot sending and reopen it with Ctrl-W to get User message up to date after editing it.
|
||||
<br>
|
||||
<br>Strings can be added only once. To edit or delete added strings you must use keyboard's delete button. When spot looks good <b>press enter</b> or click button <b>OK</b> and spot will be sent to connected DXCluster.
|
||||
<br><br>
|
||||
|
@ -29,7 +29,7 @@
|
||||
<div style="text-align: left;"><strong>CQRLOG for LINUX by OK7AN & OK1RR</strong></div>
|
||||
<p align=center><img src=img/line.png></p>
|
||||
<h2><strong>SQL Console</strong></h2>
|
||||
<div style="text-align: justify;">To enter the SQL Console, go to QSO list (Ctrl+O)
|
||||
<div style="text-align: justify;">To enter the SQL Console, go to QSO list (Ctrl-O)
|
||||
and in the upper menu bar go to <em>Filter -> SQL console.</em>
|
||||
|
||||
<div align="left">
|
||||
|
@ -40,7 +40,7 @@
|
||||
<br>If pure ASCII charcters are found the usual tag format is used. Like <QTH:4>Pori
|
||||
<br>Every time special UTF8 character is found in tags, where specification allows, UTF8 printing routines are used and the _INTL suffix is added.
|
||||
<br>At import side tags with suffix _INTL are read with UTF8 routines. Without _INTL with normal ASCII routines. This makes importing backward compatible with old cqrlog exports that have set tag lenght wrong if there has been special UTF8 characters in tag data.<br><br>
|
||||
Go to QSO list (Ctrl+O on the main logging screen or File -> Show QSO list from the menu).
|
||||
Go to QSO list (Ctrl-O on the main logging screen or File -> Show QSO list from the menu).
|
||||
<br><br>
|
||||
<img src="img/h39.png" border="0"><br><br>
|
||||
From the menu <strong>here</strong> choose File -> Import -> ADIF.<br><br>
|
||||
@ -202,7 +202,7 @@
|
||||
Since version 0.8.0 CQRLOG uses its own QSL Manager database in a very simple, plain
|
||||
text format (CSV, semicolon separated). The update is very simple. The automated update
|
||||
checks the availability of a new version, downloads and unpacks the tar.gz file if
|
||||
available. The new version must be imported - go to QSO list (Ctrl+O or from menu
|
||||
available. The new version must be imported - go to QSO list (Ctrl-O or from menu
|
||||
<em>File -> Show QSO list</em>) and choose the <em>File -> Import -> Import
|
||||
qsl managers database</em>.<br><br>
|
||||
A manual update is also possible if you download a recent version from the CQRLOG site
|
||||
|
BIN
help/img/h10.png
BIN
help/img/h10.png
Binary file not shown.
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 91 KiB |
Binary file not shown.
Before Width: | Height: | Size: 8.1 KiB After Width: | Height: | Size: 31 KiB |
BIN
help/img/h100b.png
Normal file
BIN
help/img/h100b.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
@ -43,7 +43,7 @@ function goBack() {
|
||||
<img src="img/n1mm1.png" name="1" border="0"/>
|
||||
<p>N1MM logger remote connection is just for copying logged qso infromation from other program like wsjt-x or js8call (or similars that support this kind of logging) to cqrlog.
|
||||
There is no other finctionality than just transfer the logged data.
|
||||
</br>Remote mode is activated from NewQSO/File selection list, or pressing Ctrl+K when NewQSO window is focused.
|
||||
</br>Remote mode is activated from NewQSO/File selection list, or pressing Ctrl-K when NewQSO window is focused.
|
||||
</p><p>
|
||||
<img src="img/n1mm3.png" name="3" border="0"/>
|
||||
</br>Settings must be done at wsjt-x or js8call Settings/reporting. At least checking the checkbox. Port and address values can be defaults.
|
||||
|
@ -464,6 +464,7 @@
|
||||
<Filename Value="fSplitSettings.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<ComponentName Value="frmSplitSettings"/>
|
||||
<HasResources Value="True"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
</Unit53>
|
||||
<Unit54>
|
||||
|
@ -1667,7 +1667,7 @@ object frmMain: TfrmMain
|
||||
Caption = 'Help'
|
||||
RightJustify = True
|
||||
object mnuHelpIndex: TMenuItem
|
||||
Caption = 'Help index'
|
||||
Caption = 'Help index Alt+H'
|
||||
Bitmap.Data = {
|
||||
36040000424D3604000000000000360000002800000010000000100000000100
|
||||
2000000000000004000064000000640000000000000000000000560151001806
|
||||
|
@ -812,7 +812,12 @@ begin
|
||||
begin
|
||||
mnuDoNotSendClick(nil);
|
||||
key := 0
|
||||
end
|
||||
end;
|
||||
if ((Shift = [ssCtrl]) and (key = VK_H)) then
|
||||
begin
|
||||
ShowHelp;
|
||||
key := 0
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfrmMain.mnuOQRSClick(Sender : TObject);
|
||||
|
@ -630,7 +630,6 @@ type
|
||||
procedure CheckStateClub;
|
||||
procedure SaveGrid;
|
||||
procedure LoadGrid;
|
||||
procedure SetSplit(s : String);
|
||||
procedure ShowWindows;
|
||||
procedure CheckAttachment;
|
||||
procedure CheckQSLImage;
|
||||
@ -709,6 +708,7 @@ type
|
||||
procedure NewQSOFromSpot(call,freq,mode : String;FromRbn : Boolean = False);
|
||||
procedure SetEditLabel;
|
||||
procedure UnsetEditLabel;
|
||||
procedure SetSplit(s : String);
|
||||
procedure StoreClubInfo(where,StoreText : String);
|
||||
procedure SynCallBook;
|
||||
procedure SynDXCCTab;
|
||||
@ -5596,25 +5596,8 @@ begin
|
||||
if ((Shift = [ssCTRL]) and (key = VK_W)) then
|
||||
acSendSpot.Execute;
|
||||
|
||||
|
||||
if ((Shift = [ssCTRL]) and (key = VK_1)) then
|
||||
frmTRXControl.rbRadio1.Checked := True;
|
||||
//SetSplit('1');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_2)) then
|
||||
frmTRXControl.rbRadio2.Checked := True;
|
||||
//SetSplit('2');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_3)) then
|
||||
SetSplit('3');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_4)) then
|
||||
SetSplit('4');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_5)) then
|
||||
SetSplit('5');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_6)) then
|
||||
SetSplit('6');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_7)) then
|
||||
SetSplit('7');
|
||||
if ((Shift = [ssCTRL]) and (key = VK_8)) then
|
||||
SetSplit('8');
|
||||
if (Shift = [ssCTRL]) then
|
||||
if key in [VK_1..VK_9] then SetSplit(chr(key));
|
||||
if ((Shift = [ssCTRL]) and (key = VK_0)) then
|
||||
frmTRXControl.DisableSplit;
|
||||
|
||||
@ -6827,8 +6810,19 @@ begin
|
||||
end;
|
||||
|
||||
procedure TfrmNewQSO.SetSplit(s : String);
|
||||
var
|
||||
d:integer;
|
||||
begin
|
||||
frmTRXControl.Split(cqrini.ReadInteger('Split',s,0))
|
||||
if s='9' then
|
||||
Begin
|
||||
d := cqrini.ReadInteger('Split','9',0);
|
||||
if d<0 then
|
||||
frmTRXControl.Split(d-Random(100)*10)
|
||||
else
|
||||
frmTRXControl.Split(d+Random(100)*10)
|
||||
end
|
||||
else
|
||||
frmTRXControl.Split(cqrini.ReadInteger('Split',s,0));
|
||||
end;
|
||||
|
||||
procedure TfrmNewQSO.ShowWindows;
|
||||
|
@ -23,7 +23,7 @@ object frmPreferences: TfrmPreferences
|
||||
Height = 703
|
||||
Top = 0
|
||||
Width = 697
|
||||
ActivePage = tabCWInterface
|
||||
ActivePage = tabProgram
|
||||
Align = alClient
|
||||
TabIndex = 4
|
||||
TabOrder = 0
|
||||
@ -1754,14 +1754,13 @@ object frmPreferences: TfrmPreferences
|
||||
TabOrder = 0
|
||||
end
|
||||
object btnSplit: TButton
|
||||
Left = 536
|
||||
Left = 472
|
||||
Height = 25
|
||||
Top = 584
|
||||
Top = 561
|
||||
Width = 104
|
||||
Caption = 'Split settings'
|
||||
OnClick = btnSplitClick
|
||||
TabOrder = 1
|
||||
Visible = False
|
||||
end
|
||||
object GroupBox40: TGroupBox
|
||||
Left = 7
|
||||
|
@ -1,158 +1,225 @@
|
||||
object frmSplitSettings: TfrmSplitSettings
|
||||
Left = 465
|
||||
Height = 288
|
||||
Top = 239
|
||||
Width = 326
|
||||
Left = 668
|
||||
Height = 357
|
||||
Top = 174
|
||||
Width = 299
|
||||
ActiveControl = cmbSplit1
|
||||
BorderIcons = [biSystemMenu]
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Split settings'
|
||||
ClientHeight = 288
|
||||
ClientWidth = 326
|
||||
ClientHeight = 357
|
||||
ClientWidth = 299
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
LCLVersion = '0.9.27'
|
||||
object Label1: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 19
|
||||
Width = 53
|
||||
LCLVersion = '2.0.8.0'
|
||||
object lbl1: TLabel
|
||||
AnchorSideLeft.Control = Owner
|
||||
AnchorSideTop.Control = edtSplit1
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 15
|
||||
Width = 52
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'CTRL+1'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label7: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 19
|
||||
Width = 18
|
||||
object lblH1: TLabel
|
||||
AnchorSideLeft.Control = edtSplit1
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl1
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 15
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label2: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
object lbl2: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit2
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 48
|
||||
Width = 53
|
||||
Width = 52
|
||||
Caption = 'CTRL+2'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label8: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
object lblH2: TLabel
|
||||
AnchorSideLeft.Control = edtSplit2
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl2
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 48
|
||||
Width = 18
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label3: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 77
|
||||
Width = 53
|
||||
object lbl3: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit3
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 81
|
||||
Width = 52
|
||||
Caption = 'CTRL+3'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label9: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 77
|
||||
Width = 18
|
||||
object lblH3: TLabel
|
||||
AnchorSideLeft.Control = edtSplit3
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl3
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 81
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label4: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 106
|
||||
Width = 53
|
||||
object lbl4: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit4
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 114
|
||||
Width = 52
|
||||
Caption = 'CTRL+4'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label10: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 106
|
||||
Width = 18
|
||||
object lblH4: TLabel
|
||||
AnchorSideLeft.Control = edtSplit4
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl4
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 114
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label5: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 136
|
||||
Width = 53
|
||||
object lbl5: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit5
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 147
|
||||
Width = 52
|
||||
Caption = 'CTRL+5'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label11: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 136
|
||||
Width = 18
|
||||
object lblH5: TLabel
|
||||
AnchorSideLeft.Control = edtSplit5
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl5
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 147
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label6: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 165
|
||||
Width = 53
|
||||
object lbl6: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit6
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 180
|
||||
Width = 52
|
||||
Caption = 'CTRL+6'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label12: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 165
|
||||
Width = 18
|
||||
object lblH6: TLabel
|
||||
AnchorSideLeft.Control = edtSplit6
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl6
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 180
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label13: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 194
|
||||
Width = 53
|
||||
object lbl7: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit7
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 213
|
||||
Width = 52
|
||||
Caption = 'CTRL+7'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label14: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 194
|
||||
Width = 18
|
||||
object lblH7: TLabel
|
||||
AnchorSideLeft.Control = edtSplit7
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl7
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 213
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label15: TLabel
|
||||
Left = 8
|
||||
Height = 18
|
||||
Top = 223
|
||||
Width = 53
|
||||
object lbl8: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit8
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 246
|
||||
Width = 52
|
||||
Caption = 'CTRL+8'
|
||||
ParentColor = False
|
||||
end
|
||||
object Label16: TLabel
|
||||
Left = 168
|
||||
Height = 18
|
||||
Top = 223
|
||||
Width = 18
|
||||
object lblH8: TLabel
|
||||
AnchorSideLeft.Control = edtSplit8
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl8
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 246
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object edtSplit1: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 16
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 6
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
MaxValue = 9999
|
||||
TabOrder = 0
|
||||
end
|
||||
object cmbSplit1: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 14
|
||||
AnchorSideLeft.Control = lblH1
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lblH1
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 6
|
||||
Width = 100
|
||||
BorderSpacing.Left = 6
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
Items.Strings = (
|
||||
@ -163,18 +230,24 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit2: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 45
|
||||
AnchorSideLeft.Control = edtSplit1
|
||||
AnchorSideTop.Control = edtSplit1
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 39
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 2
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit2: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 43
|
||||
AnchorSideLeft.Control = cmbSplit1
|
||||
AnchorSideTop.Control = lblH2
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 39
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
@ -186,17 +259,23 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit3: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 74
|
||||
AnchorSideLeft.Control = edtSplit2
|
||||
AnchorSideTop.Control = edtSplit2
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 72
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 4
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit3: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
AnchorSideLeft.Control = cmbSplit2
|
||||
AnchorSideTop.Control = lblH3
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 72
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
@ -209,18 +288,24 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit4: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 103
|
||||
AnchorSideLeft.Control = edtSplit3
|
||||
AnchorSideTop.Control = edtSplit3
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 105
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 6
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit4: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 101
|
||||
AnchorSideLeft.Control = cmbSplit3
|
||||
AnchorSideTop.Control = lblH4
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 105
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
@ -232,18 +317,24 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit5: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 133
|
||||
AnchorSideLeft.Control = edtSplit4
|
||||
AnchorSideTop.Control = edtSplit4
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 138
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 8
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit5: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 131
|
||||
AnchorSideLeft.Control = cmbSplit4
|
||||
AnchorSideTop.Control = lblH5
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 138
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
@ -255,18 +346,24 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit6: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 162
|
||||
AnchorSideLeft.Control = edtSplit5
|
||||
AnchorSideTop.Control = edtSplit5
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 171
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 10
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit6: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 160
|
||||
AnchorSideLeft.Control = cmbSplit5
|
||||
AnchorSideTop.Control = lblH6
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 171
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
@ -278,18 +375,24 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit7: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 191
|
||||
AnchorSideLeft.Control = edtSplit6
|
||||
AnchorSideTop.Control = edtSplit6
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 204
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 12
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit7: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 189
|
||||
AnchorSideLeft.Control = cmbSplit6
|
||||
AnchorSideTop.Control = lblH7
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 204
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
@ -301,18 +404,24 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object edtSplit8: TSpinEdit
|
||||
Left = 72
|
||||
Height = 27
|
||||
Top = 220
|
||||
AnchorSideLeft.Control = edtSplit7
|
||||
AnchorSideTop.Control = edtSplit7
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 237
|
||||
Width = 88
|
||||
MaxValue = 50000
|
||||
MaxValue = 9999
|
||||
TabOrder = 14
|
||||
Value = 1
|
||||
end
|
||||
object cmbSplit8: TComboBox
|
||||
Left = 200
|
||||
Height = 29
|
||||
Top = 218
|
||||
AnchorSideLeft.Control = cmbSplit7
|
||||
AnchorSideTop.Control = lblH8
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 237
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
@ -324,22 +433,84 @@ object frmSplitSettings: TfrmSplitSettings
|
||||
Text = 'UP'
|
||||
end
|
||||
object btnOK: TButton
|
||||
Left = 32
|
||||
AnchorSideLeft.Control = edtSplit9
|
||||
AnchorSideTop.Control = edtSplit9
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 25
|
||||
Top = 256
|
||||
Top = 321
|
||||
Width = 75
|
||||
BorderSpacing.Top = 18
|
||||
Caption = 'OK'
|
||||
OnClick = btnOKClick
|
||||
TabOrder = 16
|
||||
end
|
||||
object btnCancel: TButton
|
||||
Left = 210
|
||||
AnchorSideLeft.Control = cmbSplit9
|
||||
AnchorSideTop.Control = cmbSplit9
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideRight.Side = asrBottom
|
||||
Left = 181
|
||||
Height = 25
|
||||
Top = 256
|
||||
Top = 321
|
||||
Width = 75
|
||||
BorderSpacing.Top = 18
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 17
|
||||
end
|
||||
object lbl9: TLabel
|
||||
AnchorSideLeft.Control = lbl1
|
||||
AnchorSideTop.Control = edtSplit9
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 6
|
||||
Height = 15
|
||||
Top = 279
|
||||
Width = 52
|
||||
Caption = 'CTRL+9'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblH9: TLabel
|
||||
AnchorSideLeft.Control = edtSplit9
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lbl9
|
||||
Left = 158
|
||||
Height = 15
|
||||
Top = 279
|
||||
Width = 17
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Hz'
|
||||
ParentColor = False
|
||||
end
|
||||
object edtSplit9: TSpinEdit
|
||||
AnchorSideLeft.Control = edtSplit8
|
||||
AnchorSideTop.Control = edtSplit8
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 64
|
||||
Height = 33
|
||||
Top = 270
|
||||
Width = 88
|
||||
MaxValue = 8000
|
||||
MinValue = 1
|
||||
TabOrder = 18
|
||||
Value = 2
|
||||
end
|
||||
object cmbSplit9: TComboBox
|
||||
AnchorSideLeft.Control = cmbSplit8
|
||||
AnchorSideTop.Control = lblH9
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 181
|
||||
Height = 33
|
||||
Top = 270
|
||||
Width = 100
|
||||
ItemHeight = 0
|
||||
ItemIndex = 0
|
||||
Items.Strings = (
|
||||
'UP'
|
||||
'DOWN'
|
||||
)
|
||||
TabOrder = 19
|
||||
Text = 'UP'
|
||||
end
|
||||
end
|
||||
|
@ -23,6 +23,7 @@ type
|
||||
cmbSplit6: TComboBox;
|
||||
cmbSplit7: TComboBox;
|
||||
cmbSplit8: TComboBox;
|
||||
cmbSplit9: TComboBox;
|
||||
edtSplit2: TSpinEdit;
|
||||
edtSplit3: TSpinEdit;
|
||||
edtSplit4: TSpinEdit;
|
||||
@ -30,23 +31,26 @@ type
|
||||
edtSplit6: TSpinEdit;
|
||||
edtSplit7: TSpinEdit;
|
||||
edtSplit8: TSpinEdit;
|
||||
Label1: TLabel;
|
||||
edtSplit9: TSpinEdit;
|
||||
lbl1: TLabel;
|
||||
edtSplit1: TSpinEdit;
|
||||
Label10: TLabel;
|
||||
Label11: TLabel;
|
||||
Label12: TLabel;
|
||||
Label13: TLabel;
|
||||
Label14: TLabel;
|
||||
Label15: TLabel;
|
||||
Label16: TLabel;
|
||||
Label2: TLabel;
|
||||
Label3: TLabel;
|
||||
Label4: TLabel;
|
||||
Label5: TLabel;
|
||||
Label6: TLabel;
|
||||
Label7: TLabel;
|
||||
Label8: TLabel;
|
||||
Label9: TLabel;
|
||||
lblH4: TLabel;
|
||||
lblH5: TLabel;
|
||||
lblH6: TLabel;
|
||||
lbl7: TLabel;
|
||||
lblH7: TLabel;
|
||||
lbl8: TLabel;
|
||||
lblH8: TLabel;
|
||||
lbl9: TLabel;
|
||||
lblH9: TLabel;
|
||||
lbl2: TLabel;
|
||||
lbl3: TLabel;
|
||||
lbl4: TLabel;
|
||||
lbl5: TLabel;
|
||||
lbl6: TLabel;
|
||||
lblH1: TLabel;
|
||||
lblH2: TLabel;
|
||||
lblH3: TLabel;
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure btnOKClick(Sender: TObject);
|
||||
private
|
||||
@ -98,7 +102,12 @@ begin
|
||||
if cmbSplit8.ItemIndex = 0 then
|
||||
cqrini.WriteInteger('Split','8',edtSplit8.Value)
|
||||
else
|
||||
cqrini.WriteInteger('Split','8',edtSplit8.Value*-1)
|
||||
cqrini.WriteInteger('Split','8',edtSplit8.Value*-1);
|
||||
if cmbSplit9.ItemIndex = 0 then
|
||||
cqrini.WriteInteger('Split','9',edtSplit9.Value)
|
||||
else
|
||||
cqrini.WriteInteger('Split','9',edtSplit9.Value*-1);
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TfrmSplitSettings.FormShow(Sender: TObject);
|
||||
@ -150,8 +159,15 @@ begin
|
||||
else begin
|
||||
edtSplit8.Value := cqrini.ReadInteger('Split','8',0)*-1;
|
||||
cmbSplit8.ItemIndex := 1
|
||||
end;
|
||||
if cqrini.ReadInteger('Split','9',0) >= 0 then
|
||||
edtSplit9.Value := cqrini.ReadInteger('Split','9',0)
|
||||
else begin
|
||||
edtSplit9.Value := cqrini.ReadInteger('Split','9',0)*-1;
|
||||
cmbSplit9.ItemIndex := 1
|
||||
end
|
||||
end;
|
||||
|
||||
|
||||
end.
|
||||
|
||||
|
@ -977,7 +977,11 @@ begin
|
||||
begin
|
||||
dmUtils.EnterFreq;
|
||||
key := 0;
|
||||
end
|
||||
end;
|
||||
if (Shift = [ssCTRL]) then
|
||||
if key in [VK_1..VK_9] then frmNewQSO.SetSplit(chr(key));
|
||||
if ((Shift = [ssCTRL]) and (key = VK_0)) then
|
||||
DisableSplit;
|
||||
end;
|
||||
|
||||
procedure TfrmTRXControl.FormKeyUp(Sender: TObject; var Key: Word;
|
||||
@ -1389,34 +1393,18 @@ begin
|
||||
end;
|
||||
|
||||
procedure TfrmTRXControl.Split(Up : Integer);
|
||||
{
|
||||
var
|
||||
a : String = '';
|
||||
b : String = '';
|
||||
f : Double;
|
||||
v : String;
|
||||
}
|
||||
|
||||
begin
|
||||
{
|
||||
f := StrToFloat(lblFreq.Caption)*1000000; //freq to Hz
|
||||
f := f + up;
|
||||
if mvfo = 'VFOA' then
|
||||
v := 'VFOB'
|
||||
else
|
||||
v := 'VFOB';
|
||||
if rbRadio1.Checked then
|
||||
TRX1.SetSplit(v,FloatToStr(f))
|
||||
else
|
||||
TRX2.SetSplit(v,FloatToStr(f))
|
||||
}
|
||||
//we do split with XIT, no need to play with 2 VFOs
|
||||
if Assigned(radio) then
|
||||
begin
|
||||
radio.SetSplit(up);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfrmTRXControl.DisableSplit;
|
||||
begin
|
||||
//if rbRadio1.Checked then
|
||||
//TRX1.DisableSplit
|
||||
//else
|
||||
//TRX2.DisableSplit
|
||||
if Assigned(radio) then radio.DisableSplit;
|
||||
end;
|
||||
|
||||
function TfrmTRXControl.GetFreqHz : Double;
|
||||
|
@ -103,6 +103,8 @@ type TRigControl = class
|
||||
procedure SetCurrVFO(vfo : TVFO);
|
||||
procedure SetModePass(mode : TRigMode);
|
||||
procedure SetFreqKHz(freq : Double);
|
||||
procedure SetSplit(up:integer);
|
||||
procedure DisableSplit;
|
||||
procedure ClearRit;
|
||||
procedure Restart;
|
||||
procedure PwrOn;
|
||||
@ -258,6 +260,15 @@ procedure TRigControl.ClearRit;
|
||||
begin
|
||||
RigCommand.Add('J 0')
|
||||
end;
|
||||
procedure TRigControl.SetSplit(up:integer);
|
||||
Begin
|
||||
RigCommand.Add('Z '+IntToStr(up));
|
||||
RigCommand.Add('U XIT 1');
|
||||
end;
|
||||
procedure TRigControl.DisableSplit;
|
||||
Begin
|
||||
RigCommand.Add('U XIT 0');
|
||||
end;
|
||||
procedure TRigControl.PttOn;
|
||||
begin
|
||||
RigCommand.Add('T 1')
|
||||
|
@ -9,7 +9,7 @@ const
|
||||
cMINOR = 4;
|
||||
cRELEAS = 0;
|
||||
cBUILD = 1;
|
||||
cBUILD_DATE = '2019-10-23';
|
||||
cBUILD_DATE = '2020-10-27';
|
||||
|
||||
implementation
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user