diff --git a/ide/unitdependencies.pas b/ide/unitdependencies.pas index 161e083869..fff036858a 100644 --- a/ide/unitdependencies.pas +++ b/ide/unitdependencies.pas @@ -606,6 +606,7 @@ begin TreeNode.Data:=Self; TreeNode.HasChildren:=HasChildren; TreeNode.ImageIndex:=ImageIndex; + TreeNode.SelectedIndex:=ImageIndex; end; end; @@ -694,6 +695,7 @@ begin FSourceType:=ASrcType; if TreeNode<>nil then begin TreeNode.ImageIndex:=ImageIndex; + TreeNode.SelectedIndex:=ImageIndex; end; end; diff --git a/lcl/include/treeview.inc b/lcl/include/treeview.inc index 4bfe2de9b5..a47c8cb986 100644 --- a/lcl/include/treeview.inc +++ b/lcl/include/treeview.inc @@ -3316,9 +3316,14 @@ begin end; procedure TCustomTreeView.SetSelection(Value: TTreeNode); +var OldNode: TTreeNode; begin if FSelectedNode=Value then exit; + OldNode:=FSelectedNode; FSelectedNode:=Value; + if OldNode<>nil then begin + OldNode.Selected:=false; + end; if Value <> nil then begin Value.Selected := True; Value.MakeVisible;