mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 20:19:29 +02:00
IDE: Support uppercase '.LPI' and '.LPR' files better. Issue #40708.
This commit is contained in:
parent
a8610762e1
commit
d04340fa7e
@ -1982,7 +1982,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
MsgLine.Urgency:=mluVerbose;
|
MsgLine.Urgency:=mluVerbose;
|
||||||
end else if HideHintsUnitNotUsedInMainSource then begin
|
end else if HideHintsUnitNotUsedInMainSource then begin
|
||||||
if FilenameExtIs(MsgLine.Filename, 'lpr', true) then
|
if FilenameExtIs(MsgLine.Filename, 'lpr', false) then
|
||||||
// a lpr does not use a unit => not important
|
// a lpr does not use a unit => not important
|
||||||
MsgLine.Urgency:=mluVerbose
|
MsgLine.Urgency:=mluVerbose
|
||||||
else if FilenameIsAbsolute(MsgLine.Filename)
|
else if FilenameIsAbsolute(MsgLine.Filename)
|
||||||
|
@ -389,10 +389,10 @@ begin
|
|||||||
Package:=TLazPackageLink(LazPackageLinks.FindLinkWithPkgName(OriginalFileName));
|
Package:=TLazPackageLink(LazPackageLinks.FindLinkWithPkgName(OriginalFileName));
|
||||||
if Package=nil then begin
|
if Package=nil then begin
|
||||||
// Not found after everything we tried
|
// Not found after everything we tried
|
||||||
if FilenameExtIs(Filename,'lpi', true) then
|
if FilenameExtIs(Filename,'lpi', false) then
|
||||||
Error(ErrorFileNotFound,'file not found: '+OriginalFilename)
|
Error(ErrorFileNotFound, 'File not found: "' + OriginalFilename + '"')
|
||||||
else
|
else
|
||||||
Error(ErrorFileNotFound,'package not found: '+OriginalFilename);
|
Error(ErrorFileNotFound,'package not found: "' + OriginalFilename + '"');
|
||||||
end
|
end
|
||||||
else begin
|
else begin
|
||||||
// We found a package link
|
// We found a package link
|
||||||
@ -424,9 +424,9 @@ begin
|
|||||||
lpaInstall: Result:=true; // this is handled in AddPackagesToInstallList
|
lpaInstall: Result:=true; // this is handled in AddPackagesToInstallList
|
||||||
lpaAddPkgLinks: Result:=true;
|
lpaAddPkgLinks: Result:=true;
|
||||||
end;
|
end;
|
||||||
end else if FilenameExtIs(Filename,'lpi',true) then
|
end else if FilenameExtIs(Filename,'lpi',false) then
|
||||||
Result:=BuildProject(Filename)
|
Result:=BuildProject(Filename)
|
||||||
else if FilenameExtIs(Filename,'lpr',true) then begin
|
else if FilenameExtIs(Filename,'lpr',false) then begin
|
||||||
Filename:=ChangeFileExt(Filename,'.lpi');
|
Filename:=ChangeFileExt(Filename,'.lpi');
|
||||||
if FileExists(Filename) then
|
if FileExists(Filename) then
|
||||||
Result:=BuildProject(Filename)
|
Result:=BuildProject(Filename)
|
||||||
|
@ -5825,14 +5825,14 @@ begin
|
|||||||
FileList := TStringList.Create;
|
FileList := TStringList.Create;
|
||||||
FileList.AddStrings(FileNames);
|
FileList.AddStrings(FileNames);
|
||||||
try
|
try
|
||||||
if FilenameExtIs(FileList[0],'lpr') then
|
if FilenameExtIs(FileList[0],'lpr',false) then
|
||||||
begin
|
begin
|
||||||
SourceEditorManager.IncUpdateLock;
|
SourceEditorManager.IncUpdateLock;
|
||||||
OpenEditorFile(FileList[0],-1,WindowIndex,Nil,[ofAddToRecent]);
|
OpenEditorFile(FileList[0],-1,WindowIndex,Nil,[ofAddToRecent]);
|
||||||
SourceEditorManager.DecUpdateLock;
|
SourceEditorManager.DecUpdateLock;
|
||||||
FileList.Delete(0);
|
FileList.Delete(0);
|
||||||
end
|
end
|
||||||
else if FilenameExtIs(FileList[0],'lpi',true) then
|
else if FilenameExtIs(FileList[0],'lpi',false) then
|
||||||
begin
|
begin
|
||||||
DoOpenProjectFile(FileList[0],[ofAddToRecent]);
|
DoOpenProjectFile(FileList[0],[ofAddToRecent]);
|
||||||
FileList.Delete(0);
|
FileList.Delete(0);
|
||||||
@ -7698,9 +7698,9 @@ procedure TMainIDE.DoExecuteRemoteControl;
|
|||||||
AProjectFilename:='';
|
AProjectFilename:='';
|
||||||
for i:=Files.Count-1 downto 0 do begin
|
for i:=Files.Count-1 downto 0 do begin
|
||||||
AProjectFilename:=Files[0];
|
AProjectFilename:=Files[0];
|
||||||
if FilenameExtIs(AProjectFilename,'lpr',true) then
|
if FilenameExtIs(AProjectFilename,'lpr',false) then
|
||||||
AProjectFilename:=ChangeFileExt(AProjectFilename,'.lpi');
|
AProjectFilename:=ChangeFileExt(AProjectFilename,'.lpi');
|
||||||
if FilenameExtIs(AProjectFilename,'lpi',true) then begin
|
if FilenameExtIs(AProjectFilename,'lpi',false) then begin
|
||||||
// open a project
|
// open a project
|
||||||
Files.Delete(i); // remove from the list
|
Files.Delete(i); // remove from the list
|
||||||
AProjectFilename:=CleanAndExpandFilename(AProjectFilename);
|
AProjectFilename:=CleanAndExpandFilename(AProjectFilename);
|
||||||
|
@ -7273,7 +7273,7 @@ begin
|
|||||||
MaybeAddPopup('.pp');
|
MaybeAddPopup('.pp');
|
||||||
MaybeAddPopup('.p');
|
MaybeAddPopup('.p');
|
||||||
end;
|
end;
|
||||||
if FilenameExtIn(ShortFileName, ['lpi','lpk'], true) then begin
|
if FilenameExtIn(ShortFileName, ['lpi','lpk'], false) then begin
|
||||||
AddContextPopupMenuItem(Format(lisOpenLfm,[ShortFileName]),true,@OnPopupMenuOpenFile);
|
AddContextPopupMenuItem(Format(lisOpenLfm,[ShortFileName]),true,@OnPopupMenuOpenFile);
|
||||||
end;
|
end;
|
||||||
FPDocSrc:=LazarusHelp.GetFPDocFilenameForSource(CurFilename,false,AnOwner);
|
FPDocSrc:=LazarusHelp.GetFPDocFilenameForSource(CurFilename,false,AnOwner);
|
||||||
@ -8403,7 +8403,7 @@ begin
|
|||||||
aFilename:=copy(aFilename,p,length(aFilename)-(length(ResStr)-2));
|
aFilename:=copy(aFilename,p,length(aFilename)-(length(ResStr)-2));
|
||||||
if not FilenameIsAbsolute(aFilename) then
|
if not FilenameIsAbsolute(aFilename) then
|
||||||
aFilename:=TrimFilename(ExtractFilePath(GetActiveSE.Filename)+aFilename);
|
aFilename:=TrimFilename(ExtractFilePath(GetActiveSE.Filename)+aFilename);
|
||||||
if FilenameExtIs(aFilename,'lpi',true) then
|
if FilenameExtIs(aFilename,'lpi',false) then
|
||||||
MainIDEInterface.DoOpenProjectFile(aFilename,[ofOnlyIfExists,ofAddToRecent,ofUseCache])
|
MainIDEInterface.DoOpenProjectFile(aFilename,[ofOnlyIfExists,ofAddToRecent,ofUseCache])
|
||||||
else if FilenameExtIs(aFilename,'lpk',true) then
|
else if FilenameExtIs(aFilename,'lpk',true) then
|
||||||
PackageEditingInterface.DoOpenPackageFile(aFilename,[pofAddToRecent],false)
|
PackageEditingInterface.DoOpenPackageFile(aFilename,[pofAddToRecent],false)
|
||||||
|
@ -1039,7 +1039,7 @@ var
|
|||||||
SourceType: String;
|
SourceType: String;
|
||||||
begin
|
begin
|
||||||
if ([ofProjectLoading,ofRegularFile]*FFlags=[]) and (MainIDE.ToolStatus=itNone)
|
if ([ofProjectLoading,ofRegularFile]*FFlags=[]) and (MainIDE.ToolStatus=itNone)
|
||||||
and FilenameExtIs(FFilename,'lpi',true) then begin
|
and FilenameExtIs(FFilename,'lpi',false) then begin
|
||||||
// this is a project info file -> load whole project
|
// this is a project info file -> load whole project
|
||||||
Result:=MainIDE.DoOpenProjectFile(FFilename,[ofAddToRecent]);
|
Result:=MainIDE.DoOpenProjectFile(FFilename,[ofAddToRecent]);
|
||||||
if Result = mrOK then
|
if Result = mrOK then
|
||||||
@ -1265,7 +1265,7 @@ begin
|
|||||||
if ([ofRegularFile,ofRevert,ofProjectLoading]*FFlags=[])
|
if ([ofRegularFile,ofRevert,ofProjectLoading]*FFlags=[])
|
||||||
and FilenameIsAbsolute(FFilename) and FileExistsCached(FFilename) then begin
|
and FilenameIsAbsolute(FFilename) and FileExistsCached(FFilename) then begin
|
||||||
// check if file is a lazarus project (.lpi)
|
// check if file is a lazarus project (.lpi)
|
||||||
if FilenameExtIs(FFilename,'lpi',true) then
|
if FilenameExtIs(FFilename,'lpi',false) then
|
||||||
begin
|
begin
|
||||||
case
|
case
|
||||||
IDEQuestionDialog(lisOpenProject, Format(lisOpenTheProject, [FFilename]),
|
IDEQuestionDialog(lisOpenProject, Format(lisOpenTheProject, [FFilename]),
|
||||||
@ -1986,10 +1986,10 @@ begin
|
|||||||
if (AFiles=nil) or (AFiles.Count=0) then Exit;
|
if (AFiles=nil) or (AFiles.Count=0) then Exit;
|
||||||
//DebugLn(['MaybeOpenProject: AFiles=', AFiles.Count]);
|
//DebugLn(['MaybeOpenProject: AFiles=', AFiles.Count]);
|
||||||
AProjectFN:=AFiles[0];
|
AProjectFN:=AFiles[0];
|
||||||
if FilenameExtIs(AProjectFN,'lpr',true) then
|
if FilenameExtIs(AProjectFN,'lpr',false) then
|
||||||
AProjectFN:=ChangeFileExt(AProjectFN,'.lpi');
|
AProjectFN:=ChangeFileExt(AProjectFN,'.lpi');
|
||||||
// only try to load .lpi files here, other files are loaded later
|
// only try to load .lpi files here, other files are loaded later
|
||||||
if FilenameExtIs(AProjectFN,'lpi',true) then begin
|
if FilenameExtIs(AProjectFN,'lpi',false) then begin
|
||||||
AProjectFN:=CleanAndExpandFilename(AProjectFN);
|
AProjectFN:=CleanAndExpandFilename(AProjectFN);
|
||||||
if FileExistsUTF8(AProjectFN) then begin
|
if FileExistsUTF8(AProjectFN) then begin
|
||||||
AFiles.Delete(0);
|
AFiles.Delete(0);
|
||||||
@ -4225,7 +4225,7 @@ begin
|
|||||||
+dlgFilterAll+'|'+GetAllFilesMask;
|
+dlgFilterAll+'|'+GetAllFilesMask;
|
||||||
if OpenDialog.Execute then begin
|
if OpenDialog.Execute then begin
|
||||||
AFilename:=GetPhysicalFilenameCached(ExpandFileNameUTF8(OpenDialog.Filename),false);
|
AFilename:=GetPhysicalFilenameCached(ExpandFileNameUTF8(OpenDialog.Filename),false);
|
||||||
if not FilenameExtIs(AFilename,'lpi',true) then begin
|
if not FilenameExtIs(AFilename,'lpi',false) then begin
|
||||||
// not a lpi file
|
// not a lpi file
|
||||||
// check if it is a program source
|
// check if it is a program source
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user