IDE: refactor Project Inspector code

git-svn-id: trunk@34550 -
This commit is contained in:
juha 2012-01-03 12:41:29 +00:00
parent eb5ab4433e
commit b55334cf9d

View File

@ -155,7 +155,6 @@ type
function ChooseImageIndex(Str: String; Data: TObject; var AIsEnabled: Boolean): Integer; function ChooseImageIndex(Str: String; Data: TObject; var AIsEnabled: Boolean): Integer;
procedure UpdateProjectFiles(Immediately: boolean); procedure UpdateProjectFiles(Immediately: boolean);
procedure UpdateRequiredPackages; procedure UpdateRequiredPackages;
procedure UpdateRemovedRequiredPackages;
procedure OnProjectBeginUpdate(Sender: TObject); procedure OnProjectBeginUpdate(Sender: TObject);
procedure OnProjectEndUpdate(Sender: TObject; ProjectChanged: boolean); procedure OnProjectEndUpdate(Sender: TObject; ProjectChanged: boolean);
protected protected
@ -657,37 +656,31 @@ end;
procedure TProjectInspectorForm.UpdateRequiredPackages; procedure TProjectInspectorForm.UpdateRequiredPackages;
var var
Dependency: TPkgDependency; Dependency: TPkgDependency;
RequiredBranch: TTreeFilterBranch; RequiredBranch, RemovedBranch: TTreeFilterBranch;
NodeText, AFilename: String; NodeText, AFilename: String;
begin begin
RequiredBranch:=FilterEdit.GetBranch(DependenciesNode); if LazProject=nil then exit;
if LazProject<>nil then begin
Dependency:=LazProject.FirstRequiredDependency;
while Dependency<>nil do begin
// Figure out the item's caption
NodeText:=Dependency.AsString;
if Dependency.DefaultFilename<>'' then begin
AFilename:=Dependency.MakeFilenameRelativeToOwner(Dependency.DefaultFilename);
if Dependency.PreferDefaultFilename then
NodeText:=Format(lisCEIn, [NodeText,AFilename]) // like the 'in' keyword in the uses section
else
NodeText:=Format(lisPckEditDefault, [NodeText, AFilename]);
end;
// Add the required package under the branch
RequiredBranch.AddNodeData(NodeText, Dependency);
Dependency:=Dependency.NextRequiresDependency;
end;
end;
end;
procedure TProjectInspectorForm.UpdateRemovedRequiredPackages; // required packages
var RequiredBranch:=FilterEdit.GetBranch(DependenciesNode);
Dependency: TPkgDependency; Dependency:=LazProject.FirstRequiredDependency;
RemovedBranch: TTreeFilterBranch; while Dependency<>nil do begin
begin // Figure out the item's caption
Dependency:=Nil; NodeText:=Dependency.AsString;
if LazProject<>nil then if Dependency.DefaultFilename<>'' then begin
Dependency:=LazProject.FirstRemovedDependency; AFilename:=Dependency.MakeFilenameRelativeToOwner(Dependency.DefaultFilename);
if Dependency.PreferDefaultFilename then
NodeText:=Format(lisCEIn, [NodeText,AFilename]) // like the 'in' keyword in the uses section
else
NodeText:=Format(lisPckEditDefault, [NodeText, AFilename]);
end;
// Add the required package under the branch
RequiredBranch.AddNodeData(NodeText, Dependency);
Dependency:=Dependency.NextRequiresDependency;
end;
// removed required packages
Dependency:=LazProject.FirstRemovedDependency;
if Dependency<>nil then begin if Dependency<>nil then begin
// Create root node for removed dependencies if not done yet. // Create root node for removed dependencies if not done yet.
if RemovedDependenciesNode=nil then begin if RemovedDependenciesNode=nil then begin
@ -895,7 +888,6 @@ begin
ItemsTreeView.BeginUpdate; ItemsTreeView.BeginUpdate;
UpdateProjectFiles(true); UpdateProjectFiles(true);
UpdateRequiredPackages; UpdateRequiredPackages;
UpdateRemovedRequiredPackages;
ItemsTreeView.EndUpdate; ItemsTreeView.EndUpdate;
end; end;