From 03e8b0a1dc5e29add5a81867df3a6fa2bf661176 Mon Sep 17 00:00:00 2001 From: mattias Date: Tue, 17 May 2011 11:43:20 +0000 Subject: [PATCH] LCL: TTreeview: CustomSort with Begin/EndUpdate git-svn-id: trunk@30783 - --- lcl/include/treeview.inc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lcl/include/treeview.inc b/lcl/include/treeview.inc index ae13c743be..2832487a29 100644 --- a/lcl/include/treeview.inc +++ b/lcl/include/treeview.inc @@ -2960,19 +2960,20 @@ var Node: TTreeNode; begin Result := False; if FTreeNodes.Count>0 then begin + BeginUpdate; if not assigned(SortProc) then SortProc := @DefaultTreeViewSort; FTreeNodes.SortTopLevelNodes(SortProc); Node := FTreeNodes.GetFirstNode; while Node <> nil do begin - if Node.HasChildren then Node.CustomSort(SortProc); + if (Node.GetFirstChild<>nil) then Node.CustomSort(SortProc); Node := Node.GetNext; end; Items.ClearCache; FStates:= FStates+[tvsTopsNeedsUpdate, tvsTopItemNeedsUpdate, - tvsBottomItemNeedsUpdate, - tvsScrollbarChanged,tvsMaxRightNeedsUpdate]; + tvsBottomItemNeedsUpdate,tvsScrollbarChanged]; Invalidate; + EndUpdate; end; end;