mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-07 12:18:03 +02:00
PackageIntf: Detect if a package is installed or not via the packaging interface, function "IsPackageInstalled".
git-svn-id: trunk@59716 -
This commit is contained in:
parent
4ae9277231
commit
01d74c39d2
@ -296,6 +296,7 @@ type
|
||||
function GetPackages(Index: integer): TIDEPackage; virtual; abstract;
|
||||
function FindPackageWithName(const PkgName: string; IgnorePackage: TIDEPackage = nil): TIDEPackage; virtual; abstract;
|
||||
function FindInstalledPackageWithUnit(const AnUnitName: string): TIDEPackage; virtual; abstract;
|
||||
function IsPackageInstalled(const PkgName: string): TIDEPackage; virtual; abstract;
|
||||
|
||||
// dependencies
|
||||
function IsOwnerDependingOnPkg(AnOwner: TObject; const PkgName: string;
|
||||
|
@ -259,6 +259,7 @@ type
|
||||
function FindPackageWithName(const PkgName: string; IgnorePackage: TIDEPackage = nil): TIDEPackage; override;
|
||||
function FindInstalledPackageWithUnit(const AnUnitName: string
|
||||
): TIDEPackage; override;
|
||||
function IsPackageInstalled(const PkgName: string): TIDEPackage; override;
|
||||
function IsOwnerDependingOnPkg(AnOwner: TObject; const PkgName: string;
|
||||
out DependencyOwner: TObject): boolean; override;
|
||||
procedure GetRequiredPackages(AnOwner: TObject; out PkgList: TFPList;
|
||||
@ -4169,6 +4170,16 @@ begin
|
||||
Result:=PkgFile.LazPackage;
|
||||
end;
|
||||
|
||||
function TPkgManager.IsPackageInstalled(const PkgName: string): TIDEPackage;
|
||||
var
|
||||
LazPackage: TLazPackage;
|
||||
begin
|
||||
Result := nil;
|
||||
LazPackage:=PackageGraph.FindPackageWithName(PkgName, nil);
|
||||
if (LazPackage<>nil) and (LazPackage.Installed<>pitNope) then
|
||||
Result:=LazPackage
|
||||
end;
|
||||
|
||||
function TPkgManager.RedirectPackageDependency(APackage: TIDEPackage): TIDEPackage;
|
||||
begin
|
||||
Result:=APackage;
|
||||
|
Loading…
Reference in New Issue
Block a user