From 25cba767893cf6128d07129efe7b6ced0e7748aa Mon Sep 17 00:00:00 2001 From: michl Date: Wed, 9 Jan 2019 14:55:35 +0000 Subject: [PATCH] Evaluate a expression when EvaluateDlg is already shown git-svn-id: trunk@60045 - --- debugger/evaluatedlg.pp | 6 ++++++ ide/debugmanager.pas | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/debugger/evaluatedlg.pp b/debugger/evaluatedlg.pp index 50de43d0ec..317f3bbf56 100644 --- a/debugger/evaluatedlg.pp +++ b/debugger/evaluatedlg.pp @@ -101,6 +101,7 @@ type procedure Modify; public constructor Create(TheOwner: TComponent); override; + procedure Execute(const AExpression: String); property FindText: string read GetFindText write SetFindText; end; @@ -149,6 +150,11 @@ begin mnuHistory.Items[2].Caption:=dsrEvalHistoryDown; end; +procedure TEvaluateDlg.Execute(const AExpression: String); +begin + SetFindText(AExpression); +end; + procedure TEvaluateDlg.EvaluateCallback(Sender: TObject; ASuccess: Boolean; ResultText: String; ResultDBGType: TDBGType); var diff --git a/ide/debugmanager.pas b/ide/debugmanager.pas index bd4cbfd40a..1c484a612b 100644 --- a/ide/debugmanager.pas +++ b/ide/debugmanager.pas @@ -1680,6 +1680,13 @@ begin else TIDEInspectDlg(CurDialog).Execute(SourceEditorManager.GetActiveSE.GetOperandAtCurrentCaret); end; + if (CurDialog is TEvaluateDlg) and (SourceEditorManager.GetActiveSE <> nil) + then begin + if SourceEditorManager.GetActiveSE.SelectionAvailable then + TEvaluateDlg(CurDialog).Execute(SourceEditorManager.GetActiveSE.Selection) + else + TEvaluateDlg(CurDialog).Execute(SourceEditorManager.GetActiveSE.GetOperandAtCurrentCaret); + end; end; if not DoDisableAutoSizing then CurDialog.EnableAutoSizing{$IFDEF DebugDisableAutoSizing}('TDebugManager.ViewDebugDialog'){$ENDIF};