From 9d722e2f072691b12e112667a69c49eca1fc0162 Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Tue, 22 Dec 2009 14:01:02 +0000 Subject: [PATCH] Don't auto-call database editor when focusing a table in dbtree. Fixes issue #1550. --- source/main.pas | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/source/main.pas b/source/main.pas index 1fdedac1..b894acf7 100644 --- a/source/main.pas +++ b/source/main.pas @@ -4798,15 +4798,18 @@ end; procedure TMainForm.SetSelectedDatabase(db: WideString); var - n: PVirtualNode; + n, f: PVirtualNode; begin if db = '' then n := DBtree.GetFirst else n := FindDBNode(db); - if Assigned(n) then - SelectNode(DBtree, n) - else + if Assigned(n) then begin + // Set focus to db node, if current focus is outside + f := DBtree.FocusedNode; + if (not Assigned(f)) or (f.Parent <> n) then + SelectNode(DBtree, n); + end else raise Exception.Create('Database node ' + db + ' not found in tree.'); end;