From 3c05bc138b959fc5b51095a6f7eadb6ca84b5e42 Mon Sep 17 00:00:00 2001 From: juha Date: Mon, 23 Nov 2020 17:21:54 +0000 Subject: [PATCH] Packager: Remove event PackageEditors.OnGetUnitRegisterInfo. git-svn-id: trunk@64157 - --- ide/idedefs.pas | 6 +---- packager/packageeditor.pas | 19 +++++++------- packager/pkgmanager.pas | 52 +++----------------------------------- 3 files changed, 14 insertions(+), 63 deletions(-) diff --git a/ide/idedefs.pas b/ide/idedefs.pas index cb9b932c58..256b027bb0 100644 --- a/ide/idedefs.pas +++ b/ide/idedefs.pas @@ -52,11 +52,7 @@ type TIDEFileStateFlags = set of TIDEFileStateFlag; TGetIDEFileStateEvent = procedure(Sender: TObject; const Filename: string; - NeededFlags: TIDEFileStateFlags; out ResultFlags: TIDEFileStateFlags) - of object; - - TOnGetUnitRegisterInfo = procedure(Sender: TObject; const Filename: string; - out TheUnitName: string; out HasRegisterProc: boolean) of object; + NeededFlags: TIDEFileStateFlags; out ResultFlags: TIDEFileStateFlags) of object; implementation diff --git a/packager/packageeditor.pas b/packager/packageeditor.pas index 1b9dc1f404..3d4e56d3a5 100644 --- a/packager/packageeditor.pas +++ b/packager/packageeditor.pas @@ -39,6 +39,8 @@ uses ExtCtrls, ImgList, LCLType, LCLIntf, // LazControls TreeFilterEdit, + // Codetools + CodeToolManager, CodeCache, // LazUtils FileUtil, LazFileUtils, LazFileCache, AvgLvlTree, LazLoggerBase, LazTracer, // BuildIntf @@ -375,7 +377,6 @@ type FOnShowFindInFiles: TOnPkgEvent; FOnFreeEditor: TOnFreePkgEditor; FOnGetIDEFileInfo: TGetIDEFileStateEvent; - FOnGetUnitRegisterInfo: TOnGetUnitRegisterInfo; FOnInstallPackage: TOnPkgEvent; FOnOpenFile: TOnOpenFile; FOnOpenPackage: TOnPkgEvent; @@ -453,8 +454,6 @@ type write FOnFreeEditor; property OnGetIDEFileInfo: TGetIDEFileStateEvent read FOnGetIDEFileInfo write FOnGetIDEFileInfo; - property OnGetUnitRegisterInfo: TOnGetUnitRegisterInfo - read FOnGetUnitRegisterInfo write FOnGetUnitRegisterInfo; property OnInstallPackage: TOnPkgEvent read FOnInstallPackage write FOnInstallPackage; property OnOpenFile: TOnOpenFile read FOnOpenFile write FOnOpenFile; @@ -1918,12 +1917,11 @@ end; procedure TPackageEditorForm.DoAddNewFile(NewItem: TNewIDEItemTemplate); var - NewFilename: String; + NewFilename, NewUnitName: String; NewFileType: TPkgFileType; NewFlags: TPkgFileFlags; Desc: TProjectFileDescriptor; - NewUnitName: String; - HasRegProc: Boolean; + CodeBuffer: TCodeBuffer; begin if not (NewItem is TNewItemProjectFile) then exit; // create new file @@ -1939,9 +1937,12 @@ begin if (NewFileType in PkgFileUnitTypes) then begin Include(NewFlags,pffAddToPkgUsesSection); NewUnitName:=ExtractFilenameOnly(NewFilename); - if Assigned(PackageEditors.OnGetUnitRegisterInfo) then begin - PackageEditors.OnGetUnitRegisterInfo(Self,NewFilename,NewUnitName,HasRegProc); - if HasRegProc then + //MainIDE.SaveSourceEditorChangesToCodeCache(nil); // Not needed ? + CodeBuffer:=CodeToolBoss.LoadFile(NewFilename,true,false); + if CodeBuffer<>nil then begin + Assert(NewUnitName=CodeToolBoss.GetSourceName(CodeBuffer,false), + 'TPackageEditorForm.DoAddNewFile: Unit name mismatch.'); + if CodeToolBoss.HasInterfaceRegisterProc(CodeBuffer) then Include(NewFlags,pffHasRegisterProc); end; end; diff --git a/packager/pkgmanager.pas b/packager/pkgmanager.pas index 348dd6575a..cc61faa659 100644 --- a/packager/pkgmanager.pas +++ b/packager/pkgmanager.pas @@ -116,9 +116,6 @@ type procedure AfterWritePackage(Sender: TObject; Restore: boolean); procedure BeforeReadPackage(Sender: TObject); procedure PackageEditorFreeEditor(APackage: TLazPackage); - procedure PackageEditorGetUnitRegisterInfo(Sender: TObject; - const AFilename: string; out TheUnitName: string; - out HasRegisterProc: boolean); function PackageGraphCheckInterPkgFiles(IDEObject: TObject; PkgList: TFPList; out FilesChanged: boolean): boolean; // package graph @@ -185,9 +182,6 @@ type FirstDependency: TPkgDependency; const Directory: string; ShowAbort: boolean): TModalResult; - function DoGetUnitRegisterInfo(const AFilename: string; - out TheUnitName: string; out HasRegisterProc: boolean; - IgnoreErrors: boolean): TModalResult; procedure SaveAutoInstallDependencies; procedure LoadStaticCustomPackages; function LoadInstalledPackage(const PackageName: string; @@ -946,12 +940,6 @@ begin PackageGraph.ClosePackage(APackage); end; -procedure TPkgManager.PackageEditorGetUnitRegisterInfo(Sender: TObject; - const AFilename: string; out TheUnitName: string; out HasRegisterProc: boolean); -begin - DoGetUnitRegisterInfo(AFilename,TheUnitName,HasRegisterProc,true); -end; - function TPkgManager.PackageGraphCheckInterPkgFiles(IDEObject: TObject; PkgList: TFPList; out FilesChanged: boolean): boolean; begin @@ -1137,7 +1125,7 @@ var OldUnitName:=OldPkgName; NewUnitName:=APackage.Name; if (OldUnitName<>NewUnitName) then begin - MainIDEInterface.SaveSourceEditorChangesToCodeCache(nil); + MainIDE.SaveSourceEditorChangesToCodeCache(nil); if CodeToolBoss.RenameUsedUnit( AProject.MainUnitInfo.Source,OldUnitName,NewUnitName,'') then @@ -1505,39 +1493,6 @@ begin Result:=mrOk; end; -function TPkgManager.DoGetUnitRegisterInfo(const AFilename: string; out - TheUnitName: string; out HasRegisterProc: boolean; IgnoreErrors: boolean - ): TModalResult; - - function ErrorsHandled: boolean; - begin - if (CodeToolBoss.ErrorMessage='') or IgnoreErrors then exit(true); - MainIDE.DoJumpToCodeToolBossError; - Result:=false; - end; - -var - ExpFilename: String; - CodeBuffer: TCodeBuffer; -begin - Result:=mrCancel; - ExpFilename:=TrimFilename(AFilename); - // create default values - TheUnitName:=''; - HasRegisterProc:=false; - MainIDE.SaveSourceEditorChangesToCodeCache(nil); - CodeBuffer:=CodeToolBoss.LoadFile(ExpFilename,true,false); - if CodeBuffer<>nil then begin - TheUnitName:=CodeToolBoss.GetSourceName(CodeBuffer,false); - if not ErrorsHandled then exit; - HasRegisterProc:=CodeToolBoss.HasInterfaceRegisterProc(CodeBuffer); - if not ErrorsHandled then exit; - end; - if TheUnitName='' then - TheUnitName:=ExtractFileNameOnly(ExpFilename); - Result:=mrOk; -end; - procedure TPkgManager.SaveAutoInstallDependencies; var Dependency: TPkgDependency; @@ -1651,7 +1606,7 @@ begin and (AProject.MainUnitInfo<>nil) then begin //debugln('TPkgManager.AddUnitToProjectMainUsesSection B ',AnUnitName); if (AnUnitName<>'') then begin - MainIDEInterface.SaveSourceEditorChangesToCodeCache(nil); + MainIDE.SaveSourceEditorChangesToCodeCache(nil); if CodeToolBoss.AddUnitToMainUsesSectionIfNeeded( AProject.MainUnitInfo.Source,AnUnitName,AnUnitInFilename) then @@ -2972,7 +2927,6 @@ begin PackageEditors.OnShowFindInFiles:=@PackageEditorFindInFiles; PackageEditors.OnFreeEditor:=@PackageEditorFreeEditor; PackageEditors.OnGetIDEFileInfo:=@MainIDE.GetIDEFileState; - PackageEditors.OnGetUnitRegisterInfo:=@PackageEditorGetUnitRegisterInfo; PackageEditors.OnInstallPackage:=@PackageEditorInstallPackage; PackageEditors.OnOpenFile:=@MainIDE.DoOpenMacroFile; PackageEditors.OnOpenPackage:=@PackageEditorOpenPackage; @@ -6443,7 +6397,7 @@ begin if (Project1.MainUnitID>=0) and (pfMainUnitIsPascalSource in Project1.Flags) then begin - MainIDEInterface.SaveSourceEditorChangesToCodeCache(nil); + MainIDE.SaveSourceEditorChangesToCodeCache(nil); ShortUnitName:=ADependency.PackageName; //debugln('TPkgManager.OnProjectInspectorRemoveDependency B ShortUnitName="',ShortUnitName,'"'); if (ShortUnitName<>'') then begin