IDE: save project as: change targetfilename

git-svn-id: trunk@22142 -
This commit is contained in:
mattias 2009-10-13 11:46:43 +00:00
parent aa3aa41889
commit e3b340c74c
2 changed files with 17 additions and 2 deletions

View File

@ -6707,6 +6707,7 @@ var
TitleWasDefault: Boolean;
OldSource: String;
AFilename: String;
NewTargetFilename: String;
begin
OldProjectDir:=Project1.ProjectDirectory;
@ -6852,6 +6853,20 @@ begin
TitleWasDefault := Project1.TitleIsDefault(true);
// set new project target filename
if (Project1.TargetFilename<>'')
and ((SysUtils.CompareText(ExtractFileNameOnly(Project1.TargetFilename),
ExtractFileNameOnly(Project1.ProjectInfoFile))=0)
or (Project1.ProjectInfoFile='')) then
begin
// target file is default => change, but keep sub directories
// Note: Extension is appended automatically => do not add it
NewTargetFilename:=ExtractFilePath(Project1.TargetFilename)
+ExtractFileNameOnly(NewProgramFilename);
Project1.TargetFilename:=NewTargetFilename;
//DebugLn(['TMainIDE.DoShowSaveProjectAsDialog changed targetfilename to ',Project1.TargetFilename]);
end;
// set new project filename
Project1.ProjectInfoFile:=NewLPIFilename;
EnvironmentOptions.AddToRecentProjectFiles(NewLPIFilename);

View File

@ -817,7 +817,7 @@ type
function GetTestDirectory: string;
function GetCompileSourceFilename: string;
procedure AutoAddOutputDirToIncPath;
// state file
function LoadStateFile(IgnoreErrors: boolean): TModalResult;
function SaveStateFile(const CompilerFilename, CompilerParams: string
@ -4967,7 +4967,7 @@ function TProjectCompilerOptions.GetDefaultMainSourceFileName: string;
var
MainUnitInfo: TUnitInfo;
begin
MainUnitInfo:=FOwnerProject.MainUNitInfo;
MainUnitInfo:=FOwnerProject.MainUnitInfo;
if (MainUnitInfo<>nil) then
Result:=ExtractFileName(MainUnitInfo.Filename);
if Result='' then