mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-17 21:59:16 +02:00
IDE: fixed ignoring empty lines at end of conditionals, no modified if project icon was not touched
git-svn-id: trunk@45541 -
This commit is contained in:
parent
e476ebffab
commit
c39261347a
@ -298,7 +298,7 @@ type
|
|||||||
function GetUnitOutputDir: string; virtual; abstract;
|
function GetUnitOutputDir: string; virtual; abstract;
|
||||||
function GetUnitPaths: String; virtual; abstract;
|
function GetUnitPaths: String; virtual; abstract;
|
||||||
procedure SetCompilerPath(const AValue: String); virtual; abstract;
|
procedure SetCompilerPath(const AValue: String); virtual; abstract;
|
||||||
procedure SetConditionals(const AValue: string); virtual; abstract;
|
procedure SetConditionals(AValue: string); virtual; abstract;
|
||||||
procedure SetCustomOptions(const AValue: string); virtual; abstract;
|
procedure SetCustomOptions(const AValue: string); virtual; abstract;
|
||||||
procedure SetDebugPath(const AValue: string); virtual; abstract;
|
procedure SetDebugPath(const AValue: string); virtual; abstract;
|
||||||
procedure SetIncludePaths(const AValue: String); virtual; abstract;
|
procedure SetIncludePaths(const AValue: String); virtual; abstract;
|
||||||
|
@ -379,7 +379,6 @@ type
|
|||||||
FCustomSessionData: TStringToStringTree;
|
FCustomSessionData: TStringToStringTree;
|
||||||
FExecutableType: TProjectExecutableType;
|
FExecutableType: TProjectExecutableType;
|
||||||
FFPDocPackageName: string;
|
FFPDocPackageName: string;
|
||||||
fModified: boolean;
|
|
||||||
FProjectSessionFile: string;
|
FProjectSessionFile: string;
|
||||||
FSessionModified: boolean;
|
FSessionModified: boolean;
|
||||||
FTitle: String;
|
FTitle: String;
|
||||||
@ -400,13 +399,13 @@ type
|
|||||||
function GetFiles(Index: integer): TLazProjectFile; virtual; abstract;
|
function GetFiles(Index: integer): TLazProjectFile; virtual; abstract;
|
||||||
function GetMainFile: TLazProjectFile; virtual; abstract;
|
function GetMainFile: TLazProjectFile; virtual; abstract;
|
||||||
function GetMainFileID: Integer; virtual; abstract;
|
function GetMainFileID: Integer; virtual; abstract;
|
||||||
function GetModified: boolean; virtual;
|
function GetModified: boolean; virtual; abstract;
|
||||||
function GetProjectInfoFile: string; virtual; abstract;
|
function GetProjectInfoFile: string; virtual; abstract;
|
||||||
function GetUseManifest: boolean; virtual; abstract;
|
function GetUseManifest: boolean; virtual; abstract;
|
||||||
procedure SetExecutableType(const AValue: TProjectExecutableType); virtual;
|
procedure SetExecutableType(const AValue: TProjectExecutableType); virtual;
|
||||||
procedure SetFlags(const AValue: TProjectFlags); virtual;
|
procedure SetFlags(const AValue: TProjectFlags); virtual;
|
||||||
procedure SetMainFileID(const AValue: Integer); virtual; abstract;
|
procedure SetMainFileID(const AValue: Integer); virtual; abstract;
|
||||||
procedure SetModified(const AValue: boolean); virtual;
|
procedure SetModified(const AValue: boolean); virtual; abstract;
|
||||||
procedure SetProjectInfoFile(const NewFilename: string); virtual; abstract;
|
procedure SetProjectInfoFile(const NewFilename: string); virtual; abstract;
|
||||||
procedure SetProjectSessionFile(const AValue: string); virtual;
|
procedure SetProjectSessionFile(const AValue: string); virtual;
|
||||||
procedure SetSessionModified(const AValue: boolean); virtual;
|
procedure SetSessionModified(const AValue: boolean); virtual;
|
||||||
@ -1047,12 +1046,6 @@ begin
|
|||||||
Modified:=true;
|
Modified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLazProject.SetModified(const AValue: boolean);
|
|
||||||
begin
|
|
||||||
if fModified=AValue then exit;
|
|
||||||
fModified:=AValue;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TLazProject.SetSessionModified(const AValue: boolean);
|
procedure TLazProject.SetSessionModified(const AValue: boolean);
|
||||||
begin
|
begin
|
||||||
if FSessionModified=AValue then exit;
|
if FSessionModified=AValue then exit;
|
||||||
@ -1101,11 +1094,6 @@ begin
|
|||||||
Modified:=true;
|
Modified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TLazProject.GetModified: boolean;
|
|
||||||
begin
|
|
||||||
Result:=fModified;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TLazProject.SetExecutableType(const AValue: TProjectExecutableType);
|
procedure TLazProject.SetExecutableType(const AValue: TProjectExecutableType);
|
||||||
begin
|
begin
|
||||||
if FExecutableType=AValue then exit;
|
if FExecutableType=AValue then exit;
|
||||||
|
@ -46,7 +46,7 @@ uses
|
|||||||
{$IFNDEF EnableOldExtTools}
|
{$IFNDEF EnableOldExtTools}
|
||||||
AvgLvlTree,
|
AvgLvlTree,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
Laz2_DOM, InterfaceBase, LCLProc, Forms, Controls, ExprEval,
|
Laz2_DOM, LazUTF8, InterfaceBase, LCLProc, Forms, Controls, ExprEval,
|
||||||
DefineTemplates, CodeToolsCfgScript, CodeToolManager, KeywordFuncLists,
|
DefineTemplates, CodeToolsCfgScript, CodeToolManager, KeywordFuncLists,
|
||||||
BasicCodeTools,
|
BasicCodeTools,
|
||||||
// IDEIntf
|
// IDEIntf
|
||||||
@ -138,7 +138,7 @@ const
|
|||||||
+'//if SrcOS=''win'' then begin'+LineEnding
|
+'//if SrcOS=''win'' then begin'+LineEnding
|
||||||
+'// UnitPath += '';win'';'+LineEnding
|
+'// UnitPath += '';win'';'+LineEnding
|
||||||
+'// IncPath += '';win'';'+LineEnding
|
+'// IncPath += '';win'';'+LineEnding
|
||||||
+'//end;'+LineEnding
|
+'//end;'
|
||||||
;
|
;
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -532,9 +532,9 @@ type
|
|||||||
function GetSrcPath: string; override;
|
function GetSrcPath: string; override;
|
||||||
function GetUnitOutputDir: string; override;
|
function GetUnitOutputDir: string; override;
|
||||||
function GetUnitPaths: String; override;
|
function GetUnitPaths: String; override;
|
||||||
procedure SetBaseDirectory(const AValue: string);
|
procedure SetBaseDirectory(AValue: string);
|
||||||
procedure SetCompilerPath(const AValue: String); override;
|
procedure SetCompilerPath(const AValue: String); override;
|
||||||
procedure SetConditionals(const AValue: string); override;
|
procedure SetConditionals(AValue: string); override;
|
||||||
procedure SetCustomOptions(const AValue: string); override;
|
procedure SetCustomOptions(const AValue: string); override;
|
||||||
procedure SetIncludePaths(const AValue: String); override;
|
procedure SetIncludePaths(const AValue: String); override;
|
||||||
procedure SetLibraryPaths(const AValue: String); override;
|
procedure SetLibraryPaths(const AValue: String); override;
|
||||||
@ -1285,6 +1285,9 @@ begin
|
|||||||
NewValue:=ShortenPath(AValue,false);
|
NewValue:=ShortenPath(AValue,false);
|
||||||
if IncludePath=NewValue then exit;
|
if IncludePath=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosIncludePath,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosIncludePath,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetIncludePaths ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1292,12 +1295,20 @@ procedure TBaseCompilerOptions.SetCompilerPath(const AValue: String);
|
|||||||
begin
|
begin
|
||||||
if CompilerPath=AValue then exit;
|
if CompilerPath=AValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosCompilerPath,AValue);
|
ParsedOpts.SetUnparsedValue(pcosCompilerPath,AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetCompilerPath ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TBaseCompilerOptions.SetConditionals(const AValue: string);
|
procedure TBaseCompilerOptions.SetConditionals(AValue: string);
|
||||||
begin
|
begin
|
||||||
if FConditionals=AValue then exit;
|
if FConditionals=AValue then exit;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetConditionals ']);
|
||||||
|
debugln('old:"',dbgstr(FConditionals),'"');
|
||||||
|
debugln('new:"',dbgstr(AValue),'"');
|
||||||
|
{$ENDIF}
|
||||||
FConditionals:=AValue;
|
FConditionals:=AValue;
|
||||||
if ParsedOpts.InvalidateParseOnChange then
|
if ParsedOpts.InvalidateParseOnChange then
|
||||||
IncreaseBuildMacroChangeStamp;
|
IncreaseBuildMacroChangeStamp;
|
||||||
@ -1309,6 +1320,9 @@ procedure TBaseCompilerOptions.SetDefaultMakeOptionsFlags(
|
|||||||
begin
|
begin
|
||||||
if FDefaultMakeOptionsFlags=AValue then exit;
|
if FDefaultMakeOptionsFlags=AValue then exit;
|
||||||
FDefaultMakeOptionsFlags:=AValue;
|
FDefaultMakeOptionsFlags:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetDefaultMakeOptionsFlags ']);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1319,6 +1333,9 @@ begin
|
|||||||
NewValue:=ShortenPath(AValue,false);
|
NewValue:=ShortenPath(AValue,false);
|
||||||
if SrcPath=NewValue then exit;
|
if SrcPath=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosSrcPath,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosSrcPath,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetSrcPath ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1329,6 +1346,9 @@ begin
|
|||||||
NewValue:=ShortenPath(AValue,false);
|
NewValue:=ShortenPath(AValue,false);
|
||||||
if DebugPath=NewValue then exit;
|
if DebugPath=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosDebugPath,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosDebugPath,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetDebugPath ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1341,6 +1361,9 @@ begin
|
|||||||
fTargetCPU:=NewValue;
|
fTargetCPU:=NewValue;
|
||||||
if ParsedOpts.InvalidateParseOnChange then
|
if ParsedOpts.InvalidateParseOnChange then
|
||||||
IncreaseBuildMacroChangeStamp;
|
IncreaseBuildMacroChangeStamp;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetTargetCPU ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1350,6 +1373,9 @@ begin
|
|||||||
fTargetProc:=AValue;
|
fTargetProc:=AValue;
|
||||||
if ParsedOpts.InvalidateParseOnChange then
|
if ParsedOpts.InvalidateParseOnChange then
|
||||||
IncreaseBuildMacroChangeStamp;
|
IncreaseBuildMacroChangeStamp;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetTargetProc ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1362,6 +1388,9 @@ begin
|
|||||||
fTargetOS:=NewValue;
|
fTargetOS:=NewValue;
|
||||||
if ParsedOpts.InvalidateParseOnChange then
|
if ParsedOpts.InvalidateParseOnChange then
|
||||||
IncreaseBuildMacroChangeStamp;
|
IncreaseBuildMacroChangeStamp;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetTargetOS ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1369,6 +1398,9 @@ procedure TBaseCompilerOptions.SetTargetFilename(const AValue: String);
|
|||||||
begin
|
begin
|
||||||
if fTargetFilename=AValue then exit;
|
if fTargetFilename=AValue then exit;
|
||||||
fTargetFilename:=AValue;
|
fTargetFilename:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetTargetFilename ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1396,6 +1428,9 @@ end;
|
|||||||
|
|
||||||
procedure TBaseCompilerOptions.OnItemChanged(Sender: TObject);
|
procedure TBaseCompilerOptions.OnItemChanged(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.OnItemChanged ',DbgSName(Sender)]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1403,6 +1438,9 @@ procedure TBaseCompilerOptions.SetCreateMakefileOnBuild(AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FCreateMakefileOnBuild=AValue then Exit;
|
if FCreateMakefileOnBuild=AValue then Exit;
|
||||||
FCreateMakefileOnBuild:=AValue;
|
FCreateMakefileOnBuild:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetCreateMakefileOnBuild ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1456,10 +1494,13 @@ begin
|
|||||||
Result:=ParsedOpts.Values[pcosUnitPath].UnparsedValue;
|
Result:=ParsedOpts.Values[pcosUnitPath].UnparsedValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TBaseCompilerOptions.SetBaseDirectory(const AValue: string);
|
procedure TBaseCompilerOptions.SetBaseDirectory(AValue: string);
|
||||||
begin
|
begin
|
||||||
if BaseDirectory=AValue then exit;
|
if BaseDirectory=AValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosBaseDir,AValue);
|
ParsedOpts.SetUnparsedValue(pcosBaseDir,AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetBaseDirectory ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1471,6 +1512,9 @@ begin
|
|||||||
NewValue:=Trim(AValue);
|
NewValue:=Trim(AValue);
|
||||||
if CustomOptions=NewValue then exit;
|
if CustomOptions=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosCustomOptions,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosCustomOptions,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetCustomOptions ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1481,6 +1525,9 @@ begin
|
|||||||
NewValue:=ShortenPath(AValue,false);
|
NewValue:=ShortenPath(AValue,false);
|
||||||
if Libraries=NewValue then exit;
|
if Libraries=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosLibraryPath,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosLibraryPath,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetLibraryPaths ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1489,6 +1536,9 @@ begin
|
|||||||
if LinkerOptions=AValue then exit;
|
if LinkerOptions=AValue then exit;
|
||||||
fLinkerOptions:=AValue;
|
fLinkerOptions:=AValue;
|
||||||
ParsedOpts.SetUnparsedValue(pcosLinkerOptions,AValue);
|
ParsedOpts.SetUnparsedValue(pcosLinkerOptions,AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetLinkerOptions ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1499,6 +1549,9 @@ begin
|
|||||||
NewValue:=ShortenPath(AValue,false);
|
NewValue:=ShortenPath(AValue,false);
|
||||||
if OtherUnitFiles=NewValue then exit;
|
if OtherUnitFiles=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosUnitPath,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosUnitPath,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetUnitPaths ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1506,6 +1559,9 @@ procedure TBaseCompilerOptions.SetUnitOutputDir(const AValue: string);
|
|||||||
begin
|
begin
|
||||||
if UnitOutputDirectory=AValue then exit;
|
if UnitOutputDirectory=AValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosOutputDir,AValue);
|
ParsedOpts.SetUnparsedValue(pcosOutputDir,AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetUnitOutputDir ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1516,6 +1572,9 @@ begin
|
|||||||
NewValue:=ShortenPath(AValue,false);
|
NewValue:=ShortenPath(AValue,false);
|
||||||
if ObjectPath=NewValue then exit;
|
if ObjectPath=NewValue then exit;
|
||||||
ParsedOpts.SetUnparsedValue(pcosObjectPath,NewValue);
|
ParsedOpts.SetUnparsedValue(pcosObjectPath,NewValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TBaseCompilerOptions.SetObjectPath ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1658,7 +1717,8 @@ begin
|
|||||||
SrcPath := sp(aXMLConfig.GetValue(p+'SrcPath/Value', ''));
|
SrcPath := sp(aXMLConfig.GetValue(p+'SrcPath/Value', ''));
|
||||||
|
|
||||||
{ Conditionals }
|
{ Conditionals }
|
||||||
FConditionals:=aXMLConfig.GetValue(Path+'Conditionals/Value',DefaultConditionals);
|
FConditionals:=ConvertLineEndings(UTF8Trim(
|
||||||
|
aXMLConfig.GetValue(Path+'Conditionals/Value',DefaultConditionals),[]));
|
||||||
TIDEBuildMacros(fBuildMacros).LoadFromXMLConfig(aXMLConfig,
|
TIDEBuildMacros(fBuildMacros).LoadFromXMLConfig(aXMLConfig,
|
||||||
Path+'BuildMacros/',PathDelimChange);
|
Path+'BuildMacros/',PathDelimChange);
|
||||||
|
|
||||||
@ -4355,6 +4415,9 @@ procedure TCompilationToolOptions.SetCommand(const AValue: string);
|
|||||||
begin
|
begin
|
||||||
if FCommand=AValue then exit;
|
if FCommand=AValue then exit;
|
||||||
FCommand:=AValue;
|
FCommand:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TCompilationToolOptions.SetCommand ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4362,6 +4425,9 @@ procedure TCompilationToolOptions.SetScanForFPCMessages(const AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FScanForFPCMessages=AValue then exit;
|
if FScanForFPCMessages=AValue then exit;
|
||||||
FScanForFPCMessages:=AValue;
|
FScanForFPCMessages:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TCompilationToolOptions.SetScanForFPCMessages ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4369,6 +4435,9 @@ procedure TCompilationToolOptions.SetScanForMakeMessages(const AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FScanForMakeMessages=AValue then exit;
|
if FScanForMakeMessages=AValue then exit;
|
||||||
FScanForMakeMessages:=AValue;
|
FScanForMakeMessages:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TCompilationToolOptions.SetScanForMakeMessages ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4376,6 +4445,9 @@ procedure TCompilationToolOptions.SetShowAllMessages(const AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FShowAllMessages=AValue then exit;
|
if FShowAllMessages=AValue then exit;
|
||||||
FShowAllMessages:=AValue;
|
FShowAllMessages:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TCompilationToolOptions.SetShowAllMessages ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4549,6 +4621,9 @@ begin
|
|||||||
if (AValue='') or (not IsValidIdent(AValue)) then
|
if (AValue='') or (not IsValidIdent(AValue)) then
|
||||||
raise Exception.Create('TIDEBuildMacro.SetIdentifier invalid identifier: '+AValue);
|
raise Exception.Create('TIDEBuildMacro.SetIdentifier invalid identifier: '+AValue);
|
||||||
FIdentifier:=AValue;
|
FIdentifier:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TIDEBuildMacro.SetIdentifier ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
IncreaseBuildMacroChangeStamp;
|
IncreaseBuildMacroChangeStamp;
|
||||||
end;
|
end;
|
||||||
@ -4557,6 +4632,9 @@ procedure TIDEBuildMacro.SetDescription(const AValue: string);
|
|||||||
begin
|
begin
|
||||||
if FDescription=AValue then exit;
|
if FDescription=AValue then exit;
|
||||||
FDescription:=AValue;
|
FDescription:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TIDEBuildMacro.SetDescription ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4564,6 +4642,9 @@ procedure TIDEBuildMacro.SetValueDescriptions(const AValue: TStrings);
|
|||||||
begin
|
begin
|
||||||
if (FValueDescriptions=AValue) or FValueDescriptions.Equals(AValue) then exit;
|
if (FValueDescriptions=AValue) or FValueDescriptions.Equals(AValue) then exit;
|
||||||
FValueDescriptions.Assign(AValue);
|
FValueDescriptions.Assign(AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TIDEBuildMacro.SetValueDescriptions ',AValue.Text]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4571,6 +4652,9 @@ procedure TIDEBuildMacro.SetValues(const AValue: TStrings);
|
|||||||
begin
|
begin
|
||||||
if (FValues=AValue) or FValues.Equals(AValue) then exit;
|
if (FValues=AValue) or FValues.Equals(AValue) then exit;
|
||||||
FValues.Assign(AValue);
|
FValues.Assign(AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TIDEBuildMacro.SetValues ',AValue.Text]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4871,6 +4955,9 @@ begin
|
|||||||
fTree.Add(Flag);
|
fTree.Add(Flag);
|
||||||
fTree.ConsistencyCheck;
|
fTree.ConsistencyCheck;
|
||||||
end;
|
end;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TCompilerMsgIDFlags.SetValues ']);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4920,6 +5007,9 @@ begin
|
|||||||
Node.Data:=Flag;
|
Node.Data:=Flag;
|
||||||
Node:=Node.Successor;
|
Node:=Node.Successor;
|
||||||
end;
|
end;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TCompilerMsgIDFlags.Assign ']);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end else
|
end else
|
||||||
inherited Assign(Source);
|
inherited Assign(Source);
|
||||||
|
@ -46,6 +46,7 @@ type
|
|||||||
procedure UseXPManifestCheckBoxChange(Sender: TObject);
|
procedure UseXPManifestCheckBoxChange(Sender: TObject);
|
||||||
private
|
private
|
||||||
FProject: TProject;
|
FProject: TProject;
|
||||||
|
fIconChanged: boolean;
|
||||||
procedure SetIconFromStream(Value: TStream);
|
procedure SetIconFromStream(Value: TStream);
|
||||||
function GetIconAsStream: TStream;
|
function GetIconAsStream: TStream;
|
||||||
public
|
public
|
||||||
@ -135,6 +136,7 @@ end;
|
|||||||
|
|
||||||
procedure TProjectApplicationOptionsFrame.ClearIconButtonClick(Sender: TObject);
|
procedure TProjectApplicationOptionsFrame.ClearIconButtonClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
fIconChanged:=true;
|
||||||
IconImage.Picture.Clear;
|
IconImage.Picture.Clear;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -146,17 +148,19 @@ end;
|
|||||||
procedure TProjectApplicationOptionsFrame.DefaultIconButtonClick(Sender: TObject);
|
procedure TProjectApplicationOptionsFrame.DefaultIconButtonClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
IconImage.Picture.Icon.LoadFromResourceName(HInstance, 'MAINICONPROJECT');
|
IconImage.Picture.Icon.LoadFromResourceName(HInstance, 'MAINICONPROJECT');
|
||||||
|
fIconChanged:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectApplicationOptionsFrame.LoadIconButtonClick(Sender: TObject);
|
procedure TProjectApplicationOptionsFrame.LoadIconButtonClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if OpenPictureDialog1.Execute then
|
if not OpenPictureDialog1.Execute then exit;
|
||||||
try
|
try
|
||||||
IconImage.Picture.LoadFromFile(OpenPictureDialog1.FileName)
|
IconImage.Picture.LoadFromFile(OpenPictureDialog1.FileName);
|
||||||
except
|
fIconChanged:=true;
|
||||||
on E: Exception do
|
except
|
||||||
IDEMessageDialog(lisCCOErrorCaption, E.Message, mtError, [mbOK]);
|
on E: Exception do
|
||||||
end;
|
IDEMessageDialog(lisCCOErrorCaption, E.Message, mtError, [mbOK]);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectApplicationOptionsFrame.SaveIconButtonClick(Sender: TObject);
|
procedure TProjectApplicationOptionsFrame.SaveIconButtonClick(Sender: TObject);
|
||||||
@ -261,6 +265,7 @@ begin
|
|||||||
finally
|
finally
|
||||||
AStream.Free;
|
AStream.Free;
|
||||||
end;
|
end;
|
||||||
|
fIconChanged:=false;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -271,11 +276,14 @@ begin
|
|||||||
with AOptions as TProject do
|
with AOptions as TProject do
|
||||||
begin
|
begin
|
||||||
Title := TitleEdit.Text;
|
Title := TitleEdit.Text;
|
||||||
AStream := GetIconAsStream;
|
if fIconChanged then
|
||||||
try
|
begin
|
||||||
ProjResources.ProjectIcon.SetStream(AStream);
|
AStream := GetIconAsStream;
|
||||||
finally
|
try
|
||||||
AStream.Free;
|
ProjResources.ProjectIcon.SetStream(AStream);
|
||||||
|
finally
|
||||||
|
AStream.Free;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
UseAppBundle := UseAppBundleCheckBox.Checked;
|
UseAppBundle := UseAppBundleCheckBox.Checked;
|
||||||
with ProjResources.XPManifest do
|
with ProjResources.XPManifest do
|
||||||
|
126
ide/project.pp
126
ide/project.pp
@ -42,14 +42,13 @@ interface
|
|||||||
|
|
||||||
{$I ide.inc}
|
{$I ide.inc}
|
||||||
|
|
||||||
{off $DEFINE VerboseProjectModified}
|
|
||||||
|
|
||||||
uses
|
uses
|
||||||
{$IFDEF IDE_MEM_CHECK}
|
{$IFDEF IDE_MEM_CHECK}
|
||||||
MemCheck,
|
MemCheck,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
Classes, SysUtils, TypInfo, FPCAdds, LCLProc, LCLIntf, LCLType, Forms,
|
Classes, SysUtils, TypInfo, FPCAdds, LCLProc, LCLIntf, LCLType, Forms,
|
||||||
FileUtil, Laz2_XMLCfg, Controls, Dialogs, maps, LazFileUtils, LazFileCache,
|
FileUtil, Laz2_XMLCfg, Controls, Dialogs, maps, LazFileUtils, LazFileCache,
|
||||||
|
LazUTF8,
|
||||||
// codetools
|
// codetools
|
||||||
CodeToolsConfig, ExprEval, DefineTemplates,
|
CodeToolsConfig, ExprEval, DefineTemplates,
|
||||||
BasicCodeTools, CodeToolsCfgScript, CodeToolManager, CodeCache, FileProcs,
|
BasicCodeTools, CodeToolsCfgScript, CodeToolManager, CodeCache, FileProcs,
|
||||||
@ -523,7 +522,7 @@ type
|
|||||||
procedure SetSrcPath(const AValue: string); override;
|
procedure SetSrcPath(const AValue: string); override;
|
||||||
procedure SetUnitPaths(const AValue: string); override;
|
procedure SetUnitPaths(const AValue: string); override;
|
||||||
procedure SetUnitOutputDir(const AValue: string); override;
|
procedure SetUnitOutputDir(const AValue: string); override;
|
||||||
procedure SetConditionals(const AValue: string); override;
|
procedure SetConditionals(AValue: string); override;
|
||||||
function SubstituteProjectMacros(const s: string;
|
function SubstituteProjectMacros(const s: string;
|
||||||
PlatformIndependent: boolean): string;
|
PlatformIndependent: boolean): string;
|
||||||
public
|
public
|
||||||
@ -741,6 +740,8 @@ type
|
|||||||
FAllEditorsInfoList: TUnitEditorInfoList;
|
FAllEditorsInfoList: TUnitEditorInfoList;
|
||||||
FAllEditorsInfoMap: TMap;
|
FAllEditorsInfoMap: TMap;
|
||||||
FAutoCreateForms: boolean;
|
FAutoCreateForms: boolean;
|
||||||
|
FChangeStamp: integer;
|
||||||
|
FChangeStampSaved: integer;
|
||||||
FEnableI18NForLFM: boolean;
|
FEnableI18NForLFM: boolean;
|
||||||
FLastCompileComplete: boolean;
|
FLastCompileComplete: boolean;
|
||||||
FMacroEngine: TTransferMacroList;
|
FMacroEngine: TTransferMacroList;
|
||||||
@ -913,6 +914,8 @@ type
|
|||||||
function SomethingModified(CheckData, CheckSession: boolean; Verbose: boolean = false): boolean;
|
function SomethingModified(CheckData, CheckSession: boolean; Verbose: boolean = false): boolean;
|
||||||
function SomeDataModified(Verbose: boolean = false): boolean;
|
function SomeDataModified(Verbose: boolean = false): boolean;
|
||||||
function SomeSessionModified(Verbose: boolean = false): boolean;
|
function SomeSessionModified(Verbose: boolean = false): boolean;
|
||||||
|
procedure IncreaseChangeStamp; inline;
|
||||||
|
property ChangeStamp: integer read FChangeStamp;
|
||||||
procedure MainSourceFilenameChanged;
|
procedure MainSourceFilenameChanged;
|
||||||
procedure GetUnitsChangedOnDisk(var AnUnitList: TFPList);
|
procedure GetUnitsChangedOnDisk(var AnUnitList: TFPList);
|
||||||
function HasProjectInfoFileChangedOnDisk: boolean;
|
function HasProjectInfoFileChangedOnDisk: boolean;
|
||||||
@ -2541,7 +2544,7 @@ end;
|
|||||||
procedure TUnitInfo.SetModified(const AValue: boolean);
|
procedure TUnitInfo.SetModified(const AValue: boolean);
|
||||||
begin
|
begin
|
||||||
if Modified=AValue then exit;
|
if Modified=AValue then exit;
|
||||||
{$IFDEF VerboseProjectModified}
|
{$IFDEF VerboseIDEModified}
|
||||||
debugln(['TUnitInfo.SetModified ',Filename,' new Modified=',AValue]);
|
debugln(['TUnitInfo.SetModified ',Filename,' new Modified=',AValue]);
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
fModified:=AValue;
|
fModified:=AValue;
|
||||||
@ -2584,7 +2587,7 @@ end;
|
|||||||
procedure TUnitInfo.SetSessionModified(const AValue: boolean);
|
procedure TUnitInfo.SetSessionModified(const AValue: boolean);
|
||||||
begin
|
begin
|
||||||
if FSessionModified=AValue then exit;
|
if FSessionModified=AValue then exit;
|
||||||
{$IFDEF VerboseProjectModified}
|
{$IFDEF VerboseIDEModified}
|
||||||
debugln(['TUnitInfo.SetSessionModified ',Filename,' new Modified=',AValue]);
|
debugln(['TUnitInfo.SetSessionModified ',Filename,' new Modified=',AValue]);
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
FSessionModified:=AValue;
|
FSessionModified:=AValue;
|
||||||
@ -3383,7 +3386,13 @@ end;
|
|||||||
procedure TProject.BackupBuildModes;
|
procedure TProject.BackupBuildModes;
|
||||||
begin
|
begin
|
||||||
FActiveBuildModeBackup:=BuildModes.IndexOf(ActiveBuildMode);
|
FActiveBuildModeBackup:=BuildModes.IndexOf(ActiveBuildMode);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.BackupBuildModes START=====================']);
|
||||||
|
{$ENDIF}
|
||||||
BuildModesBackup.Assign(BuildModes,true);
|
BuildModesBackup.Assign(BuildModes,true);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.BackupBuildModes END===================== Modified=',Modified]);
|
||||||
|
{$ENDIF}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProject.RestoreBuildModes;
|
procedure TProject.RestoreBuildModes;
|
||||||
@ -3632,9 +3641,12 @@ end;
|
|||||||
|
|
||||||
procedure TProject.UnitModified(AnUnitInfo: TUnitInfo);
|
procedure TProject.UnitModified(AnUnitInfo: TUnitInfo);
|
||||||
begin
|
begin
|
||||||
if AnUnitInfo.IsPartOfProject then
|
if AnUnitInfo.IsPartOfProject then begin
|
||||||
Modified:=true
|
{$IFDEF VerboseIDEModified}
|
||||||
else
|
debugln(['TProject.UnitModified ',AnUnitInfo.Filename]);
|
||||||
|
{$ENDIF}
|
||||||
|
Modified:=true;
|
||||||
|
end else
|
||||||
SessionModified:=true;
|
SessionModified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -3687,12 +3699,6 @@ begin
|
|||||||
inherited SetFlags(AValue);
|
inherited SetFlags(AValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TProject.GetModified: boolean;
|
|
||||||
begin
|
|
||||||
Result:=inherited GetModified
|
|
||||||
or ((BuildModes<>nil) and BuildModes.Modified);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TProject.SetMainUnitID(const AValue: Integer);
|
procedure TProject.SetMainUnitID(const AValue: Integer);
|
||||||
begin
|
begin
|
||||||
if AValue>=UnitCount then
|
if AValue>=UnitCount then
|
||||||
@ -3711,19 +3717,26 @@ begin
|
|||||||
Result:=Units[Index];
|
Result:=Units[Index];
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TProject.GetModified: boolean;
|
||||||
|
begin
|
||||||
|
Result:=(FChangeStamp<>FChangeStampSaved)
|
||||||
|
or ((BuildModes<>nil) and BuildModes.Modified);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TProject.SetModified(const AValue: boolean);
|
procedure TProject.SetModified(const AValue: boolean);
|
||||||
begin
|
begin
|
||||||
{$IFDEF VerboseProjectModified}
|
{$IFDEF VerboseIDEModified}
|
||||||
if Modified<>AValue then begin
|
if Modified<>AValue then begin
|
||||||
debugln(['TProject.SetModified ================= ',AValue]);
|
debugln(['TProject.SetModified ================= ',AValue,' ',FChangeStamp]);
|
||||||
DumpStack;
|
CTDumpStack;
|
||||||
end;
|
end;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
|
||||||
if fDestroying then exit;
|
if fDestroying then exit;
|
||||||
inherited SetModified(AValue);
|
if AValue then
|
||||||
if not AValue then
|
IncreaseChangeStamp
|
||||||
begin
|
else begin
|
||||||
|
FChangeStampSaved:=FChangeStamp;
|
||||||
PublishOptions.Modified := False;
|
PublishOptions.Modified := False;
|
||||||
ProjResources.Modified := False;
|
ProjResources.Modified := False;
|
||||||
BuildModes.Modified:=false;
|
BuildModes.Modified:=false;
|
||||||
@ -3734,7 +3747,7 @@ end;
|
|||||||
procedure TProject.SetSessionModified(const AValue: boolean);
|
procedure TProject.SetSessionModified(const AValue: boolean);
|
||||||
begin
|
begin
|
||||||
if AValue=SessionModified then exit;
|
if AValue=SessionModified then exit;
|
||||||
{$IFDEF VerboseProjectModified}
|
{$IFDEF VerboseIDEModified}
|
||||||
debugln(['TProject.SetSessionModified new Modified=',AValue]);
|
debugln(['TProject.SetSessionModified new Modified=',AValue]);
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
inherited SetSessionModified(AValue);
|
inherited SetSessionModified(AValue);
|
||||||
@ -3840,7 +3853,6 @@ begin
|
|||||||
Result:=CodeToolBoss.AddCreateFormStatement(MainUnitInfo.Source,
|
Result:=CodeToolBoss.AddCreateFormStatement(MainUnitInfo.Source,
|
||||||
AClassName,AName);
|
AClassName,AName);
|
||||||
if Result then begin
|
if Result then begin
|
||||||
Modified:=true;
|
|
||||||
MainUnitInfo.Modified:=true;
|
MainUnitInfo.Modified:=true;
|
||||||
end;
|
end;
|
||||||
end else begin
|
end else begin
|
||||||
@ -3853,7 +3865,6 @@ begin
|
|||||||
Result:=CodeToolBoss.RemoveCreateFormStatement(MainUnitInfo.Source,
|
Result:=CodeToolBoss.RemoveCreateFormStatement(MainUnitInfo.Source,
|
||||||
AName);
|
AName);
|
||||||
if Result then begin
|
if Result then begin
|
||||||
Modified:=true;
|
|
||||||
MainUnitInfo.Modified:=true;
|
MainUnitInfo.Modified:=true;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -4046,6 +4057,9 @@ procedure TProject.SetEnableI18N(const AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FEnableI18N=AValue then exit;
|
if FEnableI18N=AValue then exit;
|
||||||
FEnableI18N:=AValue;
|
FEnableI18N:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetEnableI18N ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4056,6 +4070,9 @@ begin
|
|||||||
NewValue:=ChompPathDelim(TrimFilename(AValue));
|
NewValue:=ChompPathDelim(TrimFilename(AValue));
|
||||||
if FPOOutputDirectory=NewValue then exit;
|
if FPOOutputDirectory=NewValue then exit;
|
||||||
FPOOutputDirectory:=NewValue;
|
FPOOutputDirectory:=NewValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetPOOutputDirectory ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4156,6 +4173,9 @@ begin
|
|||||||
if Assigned(OnChangeProjectInfoFile) then
|
if Assigned(OnChangeProjectInfoFile) then
|
||||||
OnChangeProjectInfoFile(Self);
|
OnChangeProjectInfoFile(Self);
|
||||||
FDefineTemplates.SourceDirectoriesChanged;
|
FDefineTemplates.SourceDirectoriesChanged;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetProjectInfoFile ',NewFilename]);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
EndUpdate;
|
EndUpdate;
|
||||||
//DebugLn('TProject.SetProjectInfoFile FDefineTemplates.FUpdateLock=',dbgs(FDefineTemplates.FUpdateLock));
|
//DebugLn('TProject.SetProjectInfoFile FDefineTemplates.FUpdateLock=',dbgs(FDefineTemplates.FUpdateLock));
|
||||||
@ -4165,6 +4185,9 @@ procedure TProject.SetSessionStorage(const AValue: TProjectSessionStorage);
|
|||||||
begin
|
begin
|
||||||
if SessionStorage=AValue then exit;
|
if SessionStorage=AValue then exit;
|
||||||
inherited SetSessionStorage(AValue);
|
inherited SetSessionStorage(AValue);
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetSessionStorage ']);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
UpdateSessionFilename;
|
UpdateSessionFilename;
|
||||||
end;
|
end;
|
||||||
@ -4382,6 +4405,9 @@ begin
|
|||||||
DebugLn(['TProject.AddRequiredDependency ']);
|
DebugLn(['TProject.AddRequiredDependency ']);
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
IncreaseCompilerParseStamp;
|
IncreaseCompilerParseStamp;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.AddRequiredDependency ',Dependency.PackageName]);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
EndUpdate;
|
EndUpdate;
|
||||||
end;
|
end;
|
||||||
@ -4395,6 +4421,9 @@ begin
|
|||||||
Dependency.Removed:=true;
|
Dependency.Removed:=true;
|
||||||
FDefineTemplates.CustomDefinesChanged;
|
FDefineTemplates.CustomDefinesChanged;
|
||||||
IncreaseCompilerParseStamp;
|
IncreaseCompilerParseStamp;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.RemoveRequiredDependency ',Dependency.PackageName]);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
EndUpdate;
|
EndUpdate;
|
||||||
end;
|
end;
|
||||||
@ -5027,6 +5056,9 @@ begin
|
|||||||
FCompilerOptions:=nil;
|
FCompilerOptions:=nil;
|
||||||
FLazCompilerOptions:=nil;
|
FLazCompilerOptions:=nil;
|
||||||
end;
|
end;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetActiveBuildMode ']);
|
||||||
|
{$ENDIF}
|
||||||
SessionModified:=true;
|
SessionModified:=true;
|
||||||
if Self=Project1 then
|
if Self=Project1 then
|
||||||
IncreaseBuildMacroChangeStamp;
|
IncreaseBuildMacroChangeStamp;
|
||||||
@ -5058,6 +5090,9 @@ procedure TProject.SetEnableI18NForLFM(const AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FEnableI18NForLFM=AValue then exit;
|
if FEnableI18NForLFM=AValue then exit;
|
||||||
FEnableI18NForLFM:=AValue;
|
FEnableI18NForLFM:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetEnableI18NForLFM ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -5082,6 +5117,9 @@ procedure TProject.SetStorePathDelim(const AValue: TPathDelimSwitch);
|
|||||||
begin
|
begin
|
||||||
if FStorePathDelim=AValue then exit;
|
if FStorePathDelim=AValue then exit;
|
||||||
FStorePathDelim:=AValue;
|
FStorePathDelim:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProject.SetStorePathDelim ']);
|
||||||
|
{$ENDIF}
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -5167,6 +5205,11 @@ begin
|
|||||||
Result:=false;
|
Result:=false;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TProject.IncreaseChangeStamp;
|
||||||
|
begin
|
||||||
|
LUIncreaseChangeStamp(FChangeStamp);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TProject.MainSourceFilenameChanged;
|
procedure TProject.MainSourceFilenameChanged;
|
||||||
begin
|
begin
|
||||||
|
|
||||||
@ -5729,6 +5772,9 @@ procedure TProjectCompilationToolOptions.SetCompileReasons(
|
|||||||
begin
|
begin
|
||||||
if FCompileReasons=AValue then exit;
|
if FCompileReasons=AValue then exit;
|
||||||
FCompileReasons:=AValue;
|
FCompileReasons:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectCompilationToolOptions.SetCompileReasons']);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -5737,6 +5783,9 @@ procedure TProjectCompilationToolOptions.SetDefaultCompileReasons(
|
|||||||
begin
|
begin
|
||||||
if FDefaultCompileReasons=AValue then exit;
|
if FDefaultCompileReasons=AValue then exit;
|
||||||
FDefaultCompileReasons:=AValue;
|
FDefaultCompileReasons:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectCompilationToolOptions.SetDefaultCompileReasons']);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -5906,14 +5955,12 @@ begin
|
|||||||
LazProject.DefineTemplates.OutputDirectoryChanged;
|
LazProject.DefineTemplates.OutputDirectoryChanged;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectCompilerOptions.SetConditionals(const AValue: string);
|
procedure TProjectCompilerOptions.SetConditionals(AValue: string);
|
||||||
var
|
|
||||||
NewValue: String;
|
|
||||||
begin
|
begin
|
||||||
NewValue:=Trim(AValue);
|
AValue:=UTF8Trim(AValue,[]);
|
||||||
if Conditionals=NewValue then exit;
|
if Conditionals=AValue then exit;
|
||||||
InvalidateOptions;
|
InvalidateOptions;
|
||||||
inherited SetConditionals(NewValue);
|
inherited SetConditionals(AValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TProjectCompilerOptions.SubstituteProjectMacros(const s: string;
|
function TProjectCompilerOptions.SubstituteProjectMacros(const s: string;
|
||||||
@ -6601,11 +6648,17 @@ procedure TProjectBuildMode.SetInSession(const AValue: boolean);
|
|||||||
begin
|
begin
|
||||||
if FInSession=AValue then exit;
|
if FInSession=AValue then exit;
|
||||||
FInSession:=AValue;
|
FInSession:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectBuildMode.SetInSession ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectBuildMode.OnItemChanged(Sender: TObject);
|
procedure TProjectBuildMode.OnItemChanged(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectBuildMode.OnItemChanged ',DbgSName(Sender)]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -6623,6 +6676,9 @@ procedure TProjectBuildMode.SetIdentifier(const AValue: string);
|
|||||||
begin
|
begin
|
||||||
if FIdentifier=AValue then exit;
|
if FIdentifier=AValue then exit;
|
||||||
FIdentifier:=AValue;
|
FIdentifier:=AValue;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectBuildMode.SetIdentifier ',AValue]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -6701,6 +6757,12 @@ end;
|
|||||||
|
|
||||||
procedure TProjectBuildMode.IncreaseChangeStamp;
|
procedure TProjectBuildMode.IncreaseChangeStamp;
|
||||||
begin
|
begin
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
if not Modified then begin
|
||||||
|
debugln(['TProjectBuildMode.IncreaseChangeStamp ']);
|
||||||
|
CTDumpStack;
|
||||||
|
end;
|
||||||
|
{$ENDIF}
|
||||||
CTIncreaseChangeStamp64(FChangeStamp);
|
CTIncreaseChangeStamp64(FChangeStamp);
|
||||||
if fOnChanged<>nil then fOnChanged.CallNotifyEvents(Self);
|
if fOnChanged<>nil then fOnChanged.CallNotifyEvents(Self);
|
||||||
end;
|
end;
|
||||||
@ -6751,6 +6813,9 @@ end;
|
|||||||
|
|
||||||
procedure TProjectBuildModes.OnItemChanged(Sender: TObject);
|
procedure TProjectBuildModes.OnItemChanged(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectBuildModes.OnItemChanged ',DbgSName(Sender)]);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -6845,6 +6910,9 @@ begin
|
|||||||
Item:=Items[Index];
|
Item:=Items[Index];
|
||||||
fItems.Delete(Index);
|
fItems.Delete(Index);
|
||||||
Item.Free;
|
Item.Free;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectBuildModes.Delete ']);
|
||||||
|
{$ENDIF}
|
||||||
IncreaseChangeStamp;
|
IncreaseChangeStamp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -264,6 +264,9 @@ begin
|
|||||||
Exit;
|
Exit;
|
||||||
FData := AValue;
|
FData := AValue;
|
||||||
fFileAgeValid := false;
|
fFileAgeValid := false;
|
||||||
|
{$IFDEF VerboseIDEModified}
|
||||||
|
debugln(['TProjectIcon.SetIconData ']);
|
||||||
|
{$ENDIF}
|
||||||
Modified := True;
|
Modified := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, contnrs, typinfo, LCLProc, LCLType, LResources, Graphics,
|
Classes, SysUtils, contnrs, typinfo, LCLProc, LCLType, LResources, Graphics,
|
||||||
Forms, FileProcs, FileUtil, AVL_Tree, LazConfigStorage, Laz2_XMLCfg,
|
Forms, FileProcs, FileUtil, AVL_Tree, LazConfigStorage, Laz2_XMLCfg,
|
||||||
LazFileUtils, LazFileCache, BasicCodeTools, CodeToolsCfgScript,
|
LazFileUtils, LazFileCache, LazUTF8, BasicCodeTools, CodeToolsCfgScript,
|
||||||
DefineTemplates, CodeToolManager, CodeCache, CodeToolsStructs, PropEdits,
|
DefineTemplates, CodeToolManager, CodeCache, CodeToolsStructs, PropEdits,
|
||||||
LazIDEIntf, MacroIntf, MacroDefIntf, PackageIntf, IDEOptionsIntf,
|
LazIDEIntf, MacroIntf, MacroDefIntf, PackageIntf, IDEOptionsIntf,
|
||||||
EditDefineTree, CompilerOptions, CompOptsModes, IDEOptionDefs,
|
EditDefineTree, CompilerOptions, CompOptsModes, IDEOptionDefs,
|
||||||
@ -354,7 +354,7 @@ type
|
|||||||
procedure SetSrcPath(const AValue: string); override;
|
procedure SetSrcPath(const AValue: string); override;
|
||||||
procedure SetUnitPaths(const AValue: string); override;
|
procedure SetUnitPaths(const AValue: string); override;
|
||||||
procedure SetUnitOutputDir(const AValue: string); override;
|
procedure SetUnitOutputDir(const AValue: string); override;
|
||||||
procedure SetConditionals(const AValue: string); override;
|
procedure SetConditionals(AValue: string); override;
|
||||||
public
|
public
|
||||||
constructor Create(const AOwner: TObject); override;
|
constructor Create(const AOwner: TObject); override;
|
||||||
// IDE options
|
// IDE options
|
||||||
@ -3997,14 +3997,12 @@ begin
|
|||||||
LazPackage.DefineTemplates.OutputDirectoryChanged;
|
LazPackage.DefineTemplates.OutputDirectoryChanged;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TPkgCompilerOptions.SetConditionals(const AValue: string);
|
procedure TPkgCompilerOptions.SetConditionals(AValue: string);
|
||||||
var
|
|
||||||
NewValue: String;
|
|
||||||
begin
|
begin
|
||||||
NewValue:=Trim(AValue);
|
AValue:=UTF8Trim(AValue,[]);
|
||||||
if Conditionals=NewValue then exit;
|
if Conditionals=AValue then exit;
|
||||||
InvalidateOptions;
|
InvalidateOptions;
|
||||||
inherited SetConditionals(NewValue);
|
inherited SetConditionals(AValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
constructor TPkgCompilerOptions.Create(const AOwner: TObject);
|
constructor TPkgCompilerOptions.Create(const AOwner: TObject);
|
||||||
|
Loading…
Reference in New Issue
Block a user