mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-10 04:48:36 +02:00
IDE: Remove CodeToolBossPrepareTree and CompilerParseStampIncHandler. Update DefineTemplates elsewhere.
git-svn-id: trunk@64411 -
This commit is contained in:
parent
ac4a901a8c
commit
672f80c137
48
ide/main.pp
48
ide/main.pp
@ -162,12 +162,6 @@ uses
|
||||
MainBar, MainIntf, MainBase;
|
||||
|
||||
type
|
||||
TIDECodetoolsDefines = (
|
||||
ctdReady,
|
||||
ctdNeedUpdate,
|
||||
ctdUpdating
|
||||
);
|
||||
|
||||
{ TMainIDE }
|
||||
|
||||
TMainIDE = class(TMainIDEBase)
|
||||
@ -615,7 +609,6 @@ type
|
||||
const Filename: string; var Source: string);
|
||||
function CodeToolBossGetMethodName(const Method: TMethod;
|
||||
PropOwner: TObject): String;
|
||||
procedure CodeToolBossPrepareTree(Sender: TObject);
|
||||
procedure CodeToolBossGetIndenterExamples(Sender: TObject;
|
||||
Code: TCodeBuffer; Step: integer; // starting at 0
|
||||
var CodeBuffers: TFPList; // stopping when CodeBuffers=nil
|
||||
@ -629,7 +622,6 @@ type
|
||||
Sender: TIdentifierList; FilteredList: TFPList; PriorityCount: Integer);
|
||||
|
||||
function CTMacroFunctionProject(Data: Pointer): boolean;
|
||||
procedure CompilerParseStampIncHandler;
|
||||
procedure CodeToolBossScannerInit({%H-}Self: TCodeToolManager;
|
||||
Scanner: TLinkScanner);
|
||||
|
||||
@ -655,7 +647,6 @@ type
|
||||
FRemoteControlTimer: TTimer;
|
||||
FRemoteControlFileAge: integer;
|
||||
FRestartWanted: Boolean;
|
||||
FIDECodeToolsDefines: TIDECodetoolsDefines;
|
||||
|
||||
FRenamingComponents: TFPList; // list of TComponents currently renaming
|
||||
FOIHelpProvider: TAbstractIDEHTMLProvider;
|
||||
@ -5108,10 +5099,15 @@ begin
|
||||
ChangeMacroValue('FPCSrcDir',EnvironmentOptions.GetParsedFPCSourceDirectory);
|
||||
MainBuildBoss.EnvOptsChanged;
|
||||
|
||||
if MacroValueChanged then CodeToolBoss.DefineTree.ClearCache;
|
||||
if MacroValueChanged then
|
||||
CodeToolBoss.DefineTree.ClearCache;
|
||||
//debugln(['TMainIDE.DoEnvironmentOptionsAfterWrite FPCCompilerChanged=',FPCCompilerChanged,' FPCSrcDirChanged=',FPCSrcDirChanged,' LazarusSrcDirChanged=',LazarusSrcDirChanged]);
|
||||
if FPCCompilerChanged or FPCSrcDirChanged then
|
||||
MainBuildBoss.SetBuildTargetProject1(false);
|
||||
// Update DefineTemplates (maybe not really needed)
|
||||
// Should we test MacroValueChanged or FPCCompilerChanged or FPCSrcDirChanged?
|
||||
Project1.DefineTemplates.AllChanged(false);
|
||||
PackageGraph.RebuildDefineTemplates;
|
||||
|
||||
// update environment
|
||||
UpdateAndInvalidateDesigners;
|
||||
@ -9548,8 +9544,8 @@ begin
|
||||
@CodeToolBossGetVirtualDirectoryAlias;
|
||||
CodeToolBoss.DefineTree.OnGetVirtualDirectoryDefines:=
|
||||
@CodeToolBossGetVirtualDirectoryDefines;
|
||||
CodeToolBoss.DefineTree.OnPrepareTree:=@CodeToolBossPrepareTree;
|
||||
CodeToolBoss.IdentifierList.OnGatherUserIdentifiersToFilteredList := @CodeToolBossGatherUserIdentifiersToFilteredList;
|
||||
CodeToolBoss.IdentifierList.OnGatherUserIdentifiersToFilteredList :=
|
||||
@CodeToolBossGatherUserIdentifiersToFilteredList;
|
||||
|
||||
CodeToolBoss.DefineTree.MacroFunctions.AddExtended(
|
||||
'PROJECT',nil,@CTMacroFunctionProject);
|
||||
@ -9595,8 +9591,6 @@ begin
|
||||
|
||||
CodeToolsOpts.AssignGlobalDefineTemplatesToTree(CodeToolBoss.DefineTree);
|
||||
|
||||
CompilerParseStampIncreased:=@CompilerParseStampIncHandler;
|
||||
|
||||
{$IFDEF CheckNodeTool}
|
||||
// codetools consistency check
|
||||
CodeToolBoss.ConsistencyCheck;
|
||||
@ -9780,22 +9774,6 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMainIDE.CodeToolBossPrepareTree(Sender: TObject);
|
||||
begin
|
||||
if FIDECodeToolsDefines=ctdNeedUpdate then begin
|
||||
FIDECodeToolsDefines:=ctdUpdating;
|
||||
if Project1<>nil then
|
||||
Project1.DefineTemplates.AllChanged(false);
|
||||
PackageGraph.RebuildDefineTemplates;
|
||||
FIDECodeToolsDefines:=ctdReady;
|
||||
//DebugLn('TMainIDE.CodeToolBossPrepareTree CompilerGraphStamp=',dbgs(CompilerGraphStamp));
|
||||
{$IFDEF VerboseAddProjPkg}
|
||||
DebugLn(['TMainIDE.CodeToolBossPrepareTree 1 "',CodeToolBoss.GetUnitPathForDirectory('',true),'"']);
|
||||
DebugLn(['TMainIDE.CodeToolBossPrepareTree 2 "',CodeToolBoss.GetUnitPathForDirectory('',false),'"']);
|
||||
{$ENDIF}
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMainIDE.CodeToolBossGetIndenterExamples(Sender: TObject;
|
||||
Code: TCodeBuffer; Step: integer; var CodeBuffers: TFPList;
|
||||
var ExpandedFilenames: TStrings);
|
||||
@ -9903,16 +9881,6 @@ begin
|
||||
{$ENDIF}
|
||||
end;
|
||||
|
||||
procedure TMainIDE.CompilerParseStampIncHandler;
|
||||
begin
|
||||
if (FIDECodeToolsDefines=ctdUpdating) or (not FIDEStarted) then exit;
|
||||
{$IFDEF VerboseAddProjPkg}
|
||||
DebugLn(['TMainIDE.OnCompilerParseStampIncreased ']);
|
||||
{$ENDIF}
|
||||
FIDECodeToolsDefines:=ctdNeedUpdate;
|
||||
//CodeToolBoss.DefineTree.ClearCache;
|
||||
end;
|
||||
|
||||
procedure TMainIDE.CodeToolBossScannerInit(Self: TCodeToolManager; Scanner: TLinkScanner);
|
||||
var
|
||||
SrcEdit: TSourceEditor;
|
||||
|
@ -686,15 +686,18 @@ begin
|
||||
end;
|
||||
|
||||
procedure TPkgManager.AfterWritePackage(Sender: TObject; Restore: boolean);
|
||||
var
|
||||
Pkg: TLazPackage;
|
||||
begin
|
||||
//debugln(['TPkgManager.OnAfterWritePackage ',DbgSName(APackage),' Restore=',Restore]);
|
||||
Pkg := (Sender as TPackageIDEOptions).Package;
|
||||
//debugln(['TPkgManager.AfterWritePackage ',Pkg, ' Restore=',Restore]);
|
||||
Pkg.DefineTemplates.AllChanged(false);
|
||||
if Restore then
|
||||
(Sender as TPackageIDEOptions).Package.RestoreOptions;
|
||||
Pkg.RestoreOptions;
|
||||
end;
|
||||
|
||||
procedure TPkgManager.BeforeReadPackage(Sender: TObject);
|
||||
begin
|
||||
//debugln(['TPkgManager.OnBeforeReadPackage ',DbgSName(APackage)]);
|
||||
(Sender as TPackageIDEOptions).Package.BackupOptions;
|
||||
end;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user