mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-06 09:42:46 +02:00
LCL: QuestionDlg: return mrCancel when dialog is closed by Esc or dialog close button. Issue #26019
git-svn-id: trunk@50369 -
This commit is contained in:
parent
aa945f4ab6
commit
b264b1d936
@ -924,7 +924,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
if DialogButtons.DefaultButton = nil then
|
if DialogButtons.DefaultButton = nil then
|
||||||
DialogButtons.DefaultButton := DialogButtons.FindButton([mrYes, mrOk, mrYesToAll, mrAll, mrRetry, mrCancel, mrNo, mrNoToAll, mrAbort, mrIgnore]);
|
DialogButtons.DefaultButton := DialogButtons.FindButton([mrYes, mrOk, mrYesToAll, mrAll, mrRetry, mrCancel, mrNo, mrNoToAll, mrAbort, mrIgnore]);
|
||||||
DialogButtons.CancelButton := DialogButtons.FindButton([mrCancel, mrAbort, mrNo, mrIgnore, mrNoToAll, mrYes, mrOk, mrRetry, mrAll, mrYesToAll]);
|
|
||||||
Result := WidgetSet.AskUser(aCaption, ConvertLineEndings(aMsg),
|
Result := WidgetSet.AskUser(aCaption, ConvertLineEndings(aMsg),
|
||||||
DialogIds[DlgType], DialogButtons, HelpCtx);
|
DialogIds[DlgType], DialogButtons, HelpCtx);
|
||||||
finally
|
finally
|
||||||
|
@ -975,7 +975,7 @@ var
|
|||||||
begin
|
begin
|
||||||
Result := mrNone;
|
Result := mrNone;
|
||||||
ReleaseCapture;
|
ReleaseCapture;
|
||||||
ADialogResult := mrNone;
|
ADialogResult := mrCancel;
|
||||||
case DialogType of
|
case DialogType of
|
||||||
idDialogWarning: GtkDialogType := GTK_MESSAGE_WARNING;
|
idDialogWarning: GtkDialogType := GTK_MESSAGE_WARNING;
|
||||||
idDialogError: GtkDialogType := GTK_MESSAGE_ERROR;
|
idDialogError: GtkDialogType := GTK_MESSAGE_ERROR;
|
||||||
@ -1000,11 +1000,6 @@ begin
|
|||||||
CancelID := X;
|
CancelID := X;
|
||||||
ADialogResult := DlgBtn.ModalResult;
|
ADialogResult := DlgBtn.ModalResult;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if (ADialogResult = mrNone) and
|
|
||||||
(Buttons[X].ModalResult in [mrCancel, mrAbort, mrIgnore, mrNo, mrNoToAll])
|
|
||||||
then
|
|
||||||
ADialogResult := Buttons[X].ModalResult;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
@ -391,8 +391,13 @@ begin
|
|||||||
try
|
try
|
||||||
Result := IDCANCEL;
|
Result := IDCANCEL;
|
||||||
TaskDialogIndirect(@TaskConfig, @Result, nil, nil);
|
TaskDialogIndirect(@TaskConfig, @Result, nil, nil);
|
||||||
if (Result = IDCANCEL) and Assigned(Buttons.CancelButton) then
|
if (Result = IDCANCEL) then
|
||||||
Result := Buttons.CancelButton.ModalResult;
|
begin
|
||||||
|
if Assigned(Buttons.CancelButton) then
|
||||||
|
Result := Buttons.CancelButton.ModalResult
|
||||||
|
else
|
||||||
|
Result := mrCancel;
|
||||||
|
end;
|
||||||
finally
|
finally
|
||||||
RestoreApplicationState(State);
|
RestoreApplicationState(State);
|
||||||
for i := 0 to TaskConfig.cButtons - 1 do
|
for i := 0 to TaskConfig.cButtons - 1 do
|
||||||
|
Loading…
Reference in New Issue
Block a user