mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-11 12:36:09 +02:00
TreeFilterEdit: Improve TTreeFilterBranch.RemoveChildrenData logic. Issue #25259, patch from Cyrax
git-svn-id: trunk@43344 -
This commit is contained in:
parent
75b3da80b2
commit
95fe4e6ff1
@ -347,17 +347,21 @@ Begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTreeFilterBranch.RemoveChildrenData(ARootNode : TTreeNode);
|
procedure TTreeFilterBranch.RemoveChildrenData(ARootNode : TTreeNode);
|
||||||
Var
|
|
||||||
ANode : TTreeNode;
|
procedure ProcessSubNodes(ANode : TTreeNode);
|
||||||
Begin
|
Var
|
||||||
ANode := NIL;
|
BNode : TTreeNode;
|
||||||
FreeNodeData(ARootNode);
|
begin
|
||||||
If Assigned(ARootNode) Then
|
|
||||||
ANode := ARootNode.GetFirstChild;
|
|
||||||
While Assigned(ANode) Do Begin
|
|
||||||
FreeNodeData(ANode);
|
FreeNodeData(ANode);
|
||||||
ANode := ANode.GetNextSibling;
|
BNode := ANode.GetFirstChild;
|
||||||
|
While Assigned(BNode) Do Begin
|
||||||
|
ProcessSubNodes(BNode);
|
||||||
|
BNode := BNode.GetNextSibling;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Begin
|
||||||
|
ProcessSubNodes(ARootNode);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTreeFilterBranch.Clear;
|
procedure TTreeFilterBranch.Clear;
|
||||||
|
Loading…
Reference in New Issue
Block a user