TreeFilterEdit: change visibility of FreeNodeData and remove a hack-accessor class.

git-svn-id: trunk@43345 -
This commit is contained in:
juha 2013-10-31 00:16:45 +00:00
parent 95fe4e6ff1
commit 51b74b6f56
2 changed files with 6 additions and 11 deletions

View File

@ -45,14 +45,12 @@ type
procedure ApplyFilter; procedure ApplyFilter;
procedure TVDeleteUnneededNodes(p: integer); procedure TVDeleteUnneededNodes(p: integer);
procedure TVClearUnneededAndCreateHierachy(Filename: string); procedure TVClearUnneededAndCreateHierachy(Filename: string);
protected
procedure FreeNodeData(ANode : TTreeNode);
private
procedure RemoveChildrenData(ARootNode : TTreeNode); procedure RemoveChildrenData(ARootNode : TTreeNode);
public public
constructor Create(AOwner: TTreeFilterEdit; ARootNode: TTreeNode); constructor Create(AOwner: TTreeFilterEdit; ARootNode: TTreeNode);
destructor Destroy; override; destructor Destroy; override;
procedure AddNodeData(ANodeText: string; AData: TObject; AFullFilename: string = ''); procedure AddNodeData(ANodeText: string; AData: TObject; AFullFilename: string = '');
procedure FreeNodeData(ANode: TTreeNode);
function GetData(AIndex: integer): TObject; function GetData(AIndex: integer): TObject;
procedure Clear; procedure Clear;
end; end;
@ -106,8 +104,8 @@ type
TTFENodeData = class TTFENodeData = class
public public
Node, Node: TTreeNode;
Branch : TObject; Branch: TTreeFilterBranch;
end; end;
{ TFileNameItem } { TFileNameItem }

View File

@ -1083,9 +1083,6 @@ begin
PackageEditors.ViewPkgToDos(LazPackage); PackageEditors.ViewPkgToDos(LazPackage);
end; end;
Type
TTreeFilterBranchAccess = class(TTreeFilterBranch);
procedure TPackageEditorForm.FreeNodeData(Typ: TPENodeType); procedure TPackageEditorForm.FreeNodeData(Typ: TPENodeType);
var var
NodeData: TPENodeData; NodeData: TPENodeData;
@ -1096,7 +1093,7 @@ begin
n:=NodeData; n:=NodeData;
NodeData:=NodeData.Next; NodeData:=NodeData.Next;
if Assigned(n.Branch) Then if Assigned(n.Branch) Then
TTreeFilterBranchAccess(n.Branch).FreeNodeData(TTreeNode(n.Node)); n.Branch.FreeNodeData(n.Node);
n.Free; n.Free;
end; end;
FFirstNodeData[Typ]:=nil; FFirstNodeData[Typ]:=nil;
@ -2052,9 +2049,9 @@ begin
Result:=nil; Result:=nil;
if (TVNode=nil) then exit; if (TVNode=nil) then exit;
o:=TObject(TVNode.Data); o:=TObject(TVNode.Data);
if Assigned(o) and (o is TFileNameItem) then if o is TFileNameItem then
o:=TObject(TFileNameItem(o).Data); o:=TObject(TFileNameItem(o).Data);
if Assigned(o) and (o is TPENodeData) then if o is TPENodeData then
Result:=TPENodeData(o); Result:=TPENodeData(o);
end; end;