mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 23:59:10 +02:00
IDE: drop component: add the registering package only if designtime
This commit is contained in:
parent
9974588f86
commit
008fbd9283
@ -4501,7 +4501,8 @@ function TPkgManager.GetUnitsAndDepsForComps(ComponentClasses: TClassList;
|
|||||||
var
|
var
|
||||||
CurPackages, AllPackages: TStringList;
|
CurPackages, AllPackages: TStringList;
|
||||||
|
|
||||||
procedure AddPkgDep(CurCompReq: TComponentRequirements; PkgFile: TPkgFile);
|
procedure AddPkgDep(CurCompReq: TComponentRequirements; PkgFile: TPkgFile;
|
||||||
|
OnlyDesigntime: boolean);
|
||||||
var
|
var
|
||||||
RequiredPackage: TLazPackageID;
|
RequiredPackage: TLazPackageID;
|
||||||
Helper: TPackageIterateHelper;
|
Helper: TPackageIterateHelper;
|
||||||
@ -4510,6 +4511,9 @@ var
|
|||||||
RequiredPackage:=PkgFile.LazPackage;
|
RequiredPackage:=PkgFile.LazPackage;
|
||||||
RequiredPackage:=RedirectPackageDependency(TIDEPackage(RequiredPackage));
|
RequiredPackage:=RedirectPackageDependency(TIDEPackage(RequiredPackage));
|
||||||
if RequiredPackage=nil then exit;
|
if RequiredPackage=nil then exit;
|
||||||
|
if OnlyDesigntime and (TIDEPackage(RequiredPackage).PackageType<>lptDesignTime) then
|
||||||
|
exit;
|
||||||
|
|
||||||
if CurPackages=nil then
|
if CurPackages=nil then
|
||||||
begin
|
begin
|
||||||
CurPackages:=TStringListUTF8Fast.Create;
|
CurPackages:=TStringListUTF8Fast.Create;
|
||||||
@ -4586,10 +4590,10 @@ begin
|
|||||||
CurUnitName:=CurUnitNames[CurUnitIdx];
|
CurUnitName:=CurUnitNames[CurUnitIdx];
|
||||||
UnitList.Add(CurUnitName);
|
UnitList.Add(CurUnitName);
|
||||||
PkgFile:=PackageGraph.FindUnitInAllPackages(CurUnitName,true);
|
PkgFile:=PackageGraph.FindUnitInAllPackages(CurUnitName,true);
|
||||||
AddPkgDep(CurCompReq,PkgFile);
|
AddPkgDep(CurCompReq,PkgFile,false);
|
||||||
if TPkgComponent(CurRegComp).PkgFile<>PkgFile then
|
if TPkgComponent(CurRegComp).PkgFile<>PkgFile then
|
||||||
// e.g. a designtime package has registered the componentclass
|
// e.g. a designtime package has registered the componentclass
|
||||||
AddPkgDep(CurCompReq,TPkgComponent(CurRegComp).PkgFile);
|
AddPkgDep(nil,TPkgComponent(CurRegComp).PkgFile,true);
|
||||||
end; // for CurUnitIdx:=
|
end; // for CurUnitIdx:=
|
||||||
end;
|
end;
|
||||||
end; // for CurClassID:=...
|
end; // for CurClassID:=...
|
||||||
|
Loading…
Reference in New Issue
Block a user