From 15d73678c6df6b9d09aa05eec7256251aa0c8c9d Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Sun, 13 Jun 2010 14:39:56 +0000 Subject: [PATCH] Focus previous privilege tree node after deletion. Fixes issue #853. --- source/usermanager.pas | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/usermanager.pas b/source/usermanager.pas index 1146c8a8..a8118528 100644 --- a/source/usermanager.pas +++ b/source/usermanager.pas @@ -508,14 +508,17 @@ end; procedure TUserManagerForm.btnDeleteObjectClick(Sender: TObject); var Node: PVirtualNode; + FocusIndex: Cardinal; begin case treeObjects.GetNodeLevel(treeObjects.FocusedNode) of 0: Node := treeObjects.FocusedNode; 1: Node := treeObjects.FocusedNode.Parent; else Raise Exception.Create(SUnhandledTreeLevel); end; + FocusIndex := Node.Index; Users[listUsers.FocusedNode.Index].Privileges.DeletePrivilege(Node.Index); treeObjects.ReInitNode(Node, True); + SelectNode(treeObjects, FocusIndex-1); treeObjects.Invalidate; end;