diff --git a/source/bineditor.pas b/source/bineditor.pas index 5a578972..3a3ad8ad 100644 --- a/source/bineditor.pas +++ b/source/bineditor.pas @@ -152,6 +152,15 @@ end; procedure TfrmBinEditor.btnCancelClick(Sender: TObject); +begin + if FStopping then + Exit; + FStopping := True; + TCustomVirtualStringTree(Owner).CancelEditNode; +end; + + +procedure TfrmBinEditor.FormClose(Sender: TObject; var Action: TCloseAction); var DoPost: Boolean; begin @@ -169,12 +178,6 @@ begin end; -procedure TfrmBinEditor.FormClose(Sender: TObject; var Action: TCloseAction); -begin - btnCancelClick(Sender); -end; - - procedure TfrmBinEditor.btnApplyClick(Sender: TObject); begin FStopping := True; diff --git a/source/texteditor.pas b/source/texteditor.pas index c1978d73..2d0a4a76 100644 --- a/source/texteditor.pas +++ b/source/texteditor.pas @@ -155,6 +155,15 @@ end; procedure TfrmTextEditor.btnCancelClick(Sender: TObject); +begin + if FStopping then + Exit; + FStopping := True; + TCustomVirtualStringTree(Owner).CancelEditNode; +end; + + +procedure TfrmTextEditor.FormClose(Sender: TObject; var Action: TCloseAction); var DoPost: Boolean; begin @@ -172,12 +181,6 @@ begin end; -procedure TfrmTextEditor.FormClose(Sender: TObject; var Action: TCloseAction); -begin - btnCancelClick(Sender); -end; - - procedure TfrmTextEditor.btnApplyClick(Sender: TObject); begin FStopping := True;