Focus previous privilege tree node after deletion. Fixes issue #853.

This commit is contained in:
Ansgar Becker
2010-06-13 14:39:56 +00:00
parent 08e40a62d6
commit 15d73678c6

View File

@ -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;