mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-04 08:20:25 +02:00
project groups: started load project
git-svn-id: trunk@50360 -
This commit is contained in:
parent
cb2ab87cd6
commit
36d8d82648
@ -592,6 +592,7 @@ var
|
|||||||
PkgName: String;
|
PkgName: String;
|
||||||
begin
|
begin
|
||||||
FTarget:=Nil;
|
FTarget:=Nil;
|
||||||
|
|
||||||
PkgName:=ExtractFileUnitname(Filename,true);
|
PkgName:=ExtractFileUnitname(Filename,true);
|
||||||
if PkgName='' then begin
|
if PkgName='' then begin
|
||||||
debugln(['Warning: (lazarus) [TIDECompileTarget.LoadPackage] invalid package filename "',Filename,'"']);
|
debugln(['Warning: (lazarus) [TIDECompileTarget.LoadPackage] invalid package filename "',Filename,'"']);
|
||||||
@ -628,9 +629,28 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDECompileTarget.LoadProject;
|
procedure TIDECompileTarget.LoadProject;
|
||||||
|
var
|
||||||
|
AProject: TLazProject;
|
||||||
|
i: Integer;
|
||||||
|
ProjFile: TLazProjectFile;
|
||||||
begin
|
begin
|
||||||
UnloadTarget;
|
UnloadTarget;
|
||||||
// ToDo
|
|
||||||
|
AProject:=LazarusIDE.ActiveProject;
|
||||||
|
if (AProject<>nil) and (CompareFilenames(AProject.ProjectInfoFile,Filename)=0)
|
||||||
|
then begin
|
||||||
|
// load from active project
|
||||||
|
FFiles:=TStringList.Create;
|
||||||
|
for i:=0 to AProject.FileCount-1 do begin
|
||||||
|
ProjFile:=AProject.Files[i];
|
||||||
|
if ProjFile.IsPartOfProject then
|
||||||
|
FFiles.Add(ProjFile.Filename);
|
||||||
|
end;
|
||||||
|
// ToDo: dependencies
|
||||||
|
end else begin
|
||||||
|
// load from .lpi file
|
||||||
|
// ToDo
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDECompileTarget.LoadProjectGroup;
|
procedure TIDECompileTarget.LoadProjectGroup;
|
||||||
|
@ -134,7 +134,7 @@ type
|
|||||||
procedure SetEventCallBacks(AProjectGroup: TProjectGroup);
|
procedure SetEventCallBacks(AProjectGroup: TProjectGroup);
|
||||||
// Some helpers
|
// Some helpers
|
||||||
procedure SetProjectGroup(AValue: TProjectGroup);
|
procedure SetProjectGroup(AValue: TProjectGroup);
|
||||||
procedure ShowDependencies(AParent: TTreeNode; AProjectGroup: TProjectGroup; T: TObject; Out PD: TTargetNodes);
|
procedure ShowDependencies(AParent: TTreeNode; AProjectGroup: TProjectGroup; T: TPGCompileTarget; Out PD: TTargetNodes);
|
||||||
procedure ShowFileName;
|
procedure ShowFileName;
|
||||||
procedure Perform(ATargetAction: TPGTargetAction);
|
procedure Perform(ATargetAction: TPGTargetAction);
|
||||||
function GetActiveTarget: TPGCompileTarget;
|
function GetActiveTarget: TPGCompileTarget;
|
||||||
@ -919,19 +919,23 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ShowDependencies(AParent: TTreeNode;
|
procedure TProjectGroupEditorForm.ShowDependencies(AParent: TTreeNode;
|
||||||
AProjectGroup: TProjectGroup; T: TObject; out PD: TTargetNodes);
|
AProjectGroup: TProjectGroup; T: TPGCompileTarget; out PD: TTargetNodes);
|
||||||
Var
|
Var
|
||||||
L: TfPList;
|
i: Integer;
|
||||||
I: Integer;
|
Pkg: TIDEPackage;
|
||||||
P: TIDEPackage;
|
PkgName: String;
|
||||||
begin
|
begin
|
||||||
PD[False]:=CreateNode(AParent,lisNodeDependencies,ntDependencies,Nil,AProjectGroup);
|
PD[False]:=CreateNode(AParent,lisNodeDependencies,ntDependencies,Nil,AProjectGroup);
|
||||||
PD[True]:=CreateNode(AParent,lisNodeRemovedDependencies,ntRemovedDependencies,Nil,AProjectGroup);
|
PD[True]:=CreateNode(AParent,lisNodeRemovedDependencies,ntRemovedDependencies,Nil,AProjectGroup);
|
||||||
PackageEditingInterface.GetRequiredPackages(T,L,[pirCompileOrder]);
|
For i:=0 to T.RequiredPackageCount-1 do
|
||||||
For I:=0 to L.Count-1 do
|
|
||||||
begin
|
begin
|
||||||
P:=TIDEPackage(L[i]);
|
PkgName:=T.RequiredPackages[i].PackageName;
|
||||||
CreateNode(PD[False],P.Name,ntDependency,Nil,AProjectGroup);
|
Pkg:=PackageEditingInterface.FindPackageWithName(PkgName);
|
||||||
|
if Pkg<>nil then begin
|
||||||
|
CreateNode(PD[False],Pkg.Name,ntDependency,Nil,AProjectGroup);
|
||||||
|
end else begin
|
||||||
|
CreateNode(PD[False],PKgName,ntDependency,Nil,AProjectGroup);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user