Merge pull request #533 from OH1KH/squash-newqso_tab_offline

Fix to QSO offline input
This commit is contained in:
Petr Hlozek 2023-10-03 20:22:46 +02:00 committed by GitHub
commit 452887694d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 88 additions and 7 deletions

View File

@ -2964,6 +2964,7 @@ object frmNewQSO: TfrmNewQSO
Width = 100
BorderSpacing.Top = 2
MaxLength = 10
OnChange = edtDateChange
OnEnter = edtDateEnter
OnExit = edtDateExit
OnKeyDown = edtDateKeyDown
@ -2983,6 +2984,7 @@ object frmNewQSO: TfrmNewQSO
BorderSpacing.Left = 6
BorderSpacing.Top = 2
MaxLength = 5
OnChange = edtStartTimeChange
OnEnter = edtStartTimeEnter
OnExit = edtStartTimeExit
OnKeyDown = edtStartTimeKeyDown
@ -3002,6 +3004,7 @@ object frmNewQSO: TfrmNewQSO
BorderSpacing.Left = 6
BorderSpacing.Top = 2
MaxLength = 5
OnChange = edtEndTimeChange
OnEnter = edtEndTimeEnter
OnExit = edtEndTimeExit
OnKeyDown = edtEndTimeKeyDown

View File

@ -418,8 +418,10 @@ type
procedure dbgrdQSOBeforeColumnSized(Sender: TObject);
procedure edtAwardEnter(Sender: TObject);
procedure edtCallChange(Sender: TObject);
procedure edtDateChange(Sender: TObject);
procedure edtDateEnter(Sender: TObject);
procedure edtDXCCRefEnter(Sender: TObject);
procedure edtEndTimeChange(Sender: TObject);
procedure edtEndTimeEnter(Sender: TObject);
procedure edtGridChange(Sender: TObject);
procedure edtGridEnter(Sender: TObject);
@ -437,6 +439,7 @@ type
procedure edtRXFreqChange(Sender: TObject);
procedure edtRXFreqExit(Sender: TObject);
procedure edtRXLOExit(Sender: TObject);
procedure edtStartTimeChange(Sender: TObject);
procedure edtStartTimeEnter(Sender: TObject);
procedure edtStateEnter(Sender: TObject);
procedure edtTXLOExit(Sender: TObject);
@ -3435,7 +3438,10 @@ begin
frmMain.dbgrdMain.SetFocus
end
else
edtCall.SetFocus;
Begin
if cbOffline.Checked then edtDate.SetFocus
else edtCall.SetFocus;
end;
end;
end;
@ -3632,7 +3638,14 @@ begin
begin
edtStartTime.SetFocus;
key := 0
end
end;
if ( ((length(edtDate.Text)=5) or (length(edtDate.Text)=8))
and ((key = VK_BACK) or (key = VK_DELETE))
and (not AnyRemoteOn and cbOffline.Checked) ) then //auto del "-"
begin
edtDate.Text:=copy(edtDate.Text,1,length(edtDate.Text)-2);
key := 0
end;
end;
@ -3711,6 +3724,18 @@ begin
mComment.SetFocus;
key := 0
end;
if ((key = VK_TAB) and cbOffline.Checked and (edtCall.Text='') and (not AnyRemoteOn)) then
Begin
edtCall.SetFocus;
key := 0
end;
if ((length(edtEndTime.Text)=3)
and ((key = VK_BACK) or (key = VK_DELETE))
and (not AnyRemoteOn and cbOffline.Checked) ) then //aute del ":"
begin
edtEndTime.Text:=copy(edtEndTime.Text,1,length(edtEndTime.Text)-2);
key := 0
end;
end;
@ -3965,7 +3990,14 @@ begin
begin
edtEndTime.SetFocus;
key := 0
end
end;
if ((length(edtStartTime.Text)=3)
and ((key = VK_BACK) or (key = VK_DELETE))
and (not AnyRemoteOn and cbOffline.Checked) ) then //aute del ":"
begin
edtStartTime.Text:=copy(edtStartTime.Text,1,length(edtStartTime.Text)-2);
key := 0
end;
end;
procedure TfrmNewQSO.FormClose(Sender: TObject; var CloseAction: TCloseAction);
@ -4408,7 +4440,20 @@ begin
if frmSCP.Showing and (Length(edtCall.Text)>2) then
frmSCP.mSCP.Text := dmData.GetSCPCalls(edtCall.Text)
else
frmSCP.mSCP.Clear
frmSCP.mSCP.Clear;
lblGrid.Font.Style:=[];
lblGrid.Font.Color:=clDefault;
end;
procedure TfrmNewQSO.edtDateChange(Sender: TObject);
begin
if cbOffline.Checked and not AnyRemoteOn then
begin
if (length(edtDate.Text)=4) or (length(edtDate.Text)=7) then //auto "-"
edtDate.Text:=edtDate.Text+'-';
edtDate.SelStart:=length(edtDate.Text);
edtDate.SelLength:=0;
end;
end;
procedure TfrmNewQSO.edtDateEnter(Sender: TObject);
@ -4421,6 +4466,17 @@ begin
edtDXCCRef.SelectAll
end;
procedure TfrmNewQSO.edtEndTimeChange(Sender: TObject);
begin
if cbOffline.Checked and not AnyRemoteOn then
begin
if (length(edtEndTime.Text)=2) then //auto ":"
edtEndTime.Text:=edtEndTime.Text+':';
edtEndTime.SelStart:=length(edtEndTime.Text);
edtEndTime.SelLength:=0;
end;
end;
procedure TfrmNewQSO.edtEndTimeEnter(Sender: TObject);
begin
edtEndTime.SelectAll
@ -4432,6 +4488,7 @@ begin
// keying has own checking
edtGrid.Text := dmUtils.StdFormatLocator(edtGrid.Text);
edtGrid.SelStart := Length(edtGrid.Text);
edtGrid.SelLength:=0;
end;
procedure TfrmNewQSO.edtGridEnter(Sender: TObject);
@ -4445,7 +4502,14 @@ begin
begin
CalculateDistanceEtc;
sbtnLocatorMap.Visible := True;
lblGrid.Font.Style:=[];
lblGrid.Font.Color:=clDefault;
end
else
Begin
lblGrid.Font.Style:=[fsBold];
lblGrid.Font.Color:=clRed;
end;
end;
procedure TfrmNewQSO.edtGridKeyDown(Sender: TObject; var Key: Word;
@ -4894,6 +4958,17 @@ begin
cqrini.WriteString('NewQSO', 'RXLO', edtRXLO.Text);
end;
procedure TfrmNewQSO.edtStartTimeChange(Sender: TObject);
begin
if cbOffline.Checked and not AnyRemoteOn then
begin
if (length(edtStartTime.Text)=2) then //auto ":"
edtStartTime.Text:=edtStartTime.Text+':';
edtStartTime.SelStart:=length(edtStartTime.Text);
edtStartTime.SelLength:=0;
end;
end;
procedure TfrmNewQSO.edtStartTimeEnter(Sender: TObject);
begin
edtStartTime.SelectAll
@ -5816,8 +5891,11 @@ end;
procedure TfrmNewQSO.mCommentKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_TAB then
edtCall.SetFocus;
if ((key = VK_TAB) and (not AnyRemoteOn)) then
Begin
edtCall.SetFocus;
key := 0
end;
end;
procedure TfrmNewQSO.mCommentKeyUp(Sender: TObject; var Key: Word;

View File

@ -21,7 +21,7 @@ const
cRELEAS = 0;
cBUILD = 1;
cBUILD_DATE = '2022-07-05';
cBUILD_DATE = '2022-08-24';
implementation