mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-11-25 05:37:17 +01:00
IDE: add method "DoSaveEditorFile(const Filename: string; ..." to IDE interface. Analogous to DoCloseEditorFile method with Filename param.
git-svn-id: trunk@40566 -
This commit is contained in:
parent
c16cec36c1
commit
950bdb1d35
10
ide/main.pp
10
ide/main.pp
@ -738,6 +738,8 @@ type
|
|||||||
deprecated 'use method with EditorObject'; // deprecated in 0.9.29 March 2010
|
deprecated 'use method with EditorObject'; // deprecated in 0.9.29 March 2010
|
||||||
function DoSaveEditorFile(AEditor: TSourceEditorInterface;
|
function DoSaveEditorFile(AEditor: TSourceEditorInterface;
|
||||||
Flags: TSaveFlags): TModalResult; override;
|
Flags: TSaveFlags): TModalResult; override;
|
||||||
|
function DoSaveEditorFile(const Filename: string;
|
||||||
|
Flags: TSaveFlags): TModalResult; override;
|
||||||
|
|
||||||
function DoCloseEditorFile(PageIndex:integer;
|
function DoCloseEditorFile(PageIndex:integer;
|
||||||
Flags: TCloseFlags):TModalResult; override;
|
Flags: TCloseFlags):TModalResult; override;
|
||||||
@ -746,6 +748,7 @@ type
|
|||||||
Flags: TCloseFlags):TModalResult; override;
|
Flags: TCloseFlags):TModalResult; override;
|
||||||
function DoCloseEditorFile(const Filename: string;
|
function DoCloseEditorFile(const Filename: string;
|
||||||
Flags: TCloseFlags): TModalResult; override;
|
Flags: TCloseFlags): TModalResult; override;
|
||||||
|
|
||||||
function DoSaveAll(Flags: TSaveFlags): TModalResult; override;
|
function DoSaveAll(Flags: TSaveFlags): TModalResult; override;
|
||||||
function DoOpenEditorFile(AFileName: string; PageIndex: integer;
|
function DoOpenEditorFile(AFileName: string; PageIndex: integer;
|
||||||
Flags: TOpenFlags): TModalResult; override;
|
Flags: TOpenFlags): TModalResult; override;
|
||||||
@ -5473,7 +5476,7 @@ begin
|
|||||||
SourceFileMgr.CreateFileDialogFilterForSourceEditorFiles(Filter, AllEditorMask, AllMask);
|
SourceFileMgr.CreateFileDialogFilterForSourceEditorFiles(Filter, AllEditorMask, AllMask);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TMainIDE.DoSaveEditorFile(PageIndex:integer; Flags: TSaveFlags):TModalResult;
|
function TMainIDE.DoSaveEditorFile(PageIndex:integer; Flags: TSaveFlags): TModalResult;
|
||||||
begin
|
begin
|
||||||
Result := DoSaveEditorFile(
|
Result := DoSaveEditorFile(
|
||||||
SourceEditorManager.ActiveSourceWindow.FindSourceEditorWithPageIndex(PageIndex),Flags);
|
SourceEditorManager.ActiveSourceWindow.FindSourceEditorWithPageIndex(PageIndex),Flags);
|
||||||
@ -5484,6 +5487,11 @@ begin
|
|||||||
Result:=SourceFileMgr.SaveEditorFile(AEditor, Flags);
|
Result:=SourceFileMgr.SaveEditorFile(AEditor, Flags);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TMainIDE.DoSaveEditorFile(const Filename: string; Flags: TSaveFlags): TModalResult;
|
||||||
|
begin
|
||||||
|
Result:=SourceFileMgr.SaveEditorFile(Filename, Flags);
|
||||||
|
end;
|
||||||
|
|
||||||
function TMainIDE.DoCloseEditorFile(PageIndex:integer; Flags: TCloseFlags): TModalResult;
|
function TMainIDE.DoCloseEditorFile(PageIndex:integer; Flags: TCloseFlags): TModalResult;
|
||||||
begin
|
begin
|
||||||
Result := DoCloseEditorFile(
|
Result := DoCloseEditorFile(
|
||||||
|
|||||||
@ -78,10 +78,10 @@ type
|
|||||||
out AllEditorMask, AllMask: string);
|
out AllEditorMask, AllMask: string);
|
||||||
function SaveEditorFile(AEditor: TSourceEditorInterface;
|
function SaveEditorFile(AEditor: TSourceEditorInterface;
|
||||||
Flags: TSaveFlags): TModalResult;
|
Flags: TSaveFlags): TModalResult;
|
||||||
|
function SaveEditorFile(const Filename: string; Flags: TSaveFlags): TModalResult;
|
||||||
function CloseEditorFile(AEditor: TSourceEditorInterface;
|
function CloseEditorFile(AEditor: TSourceEditorInterface;
|
||||||
Flags: TCloseFlags):TModalResult;
|
Flags: TCloseFlags):TModalResult;
|
||||||
function CloseEditorFile(const Filename: string;
|
function CloseEditorFile(const Filename: string; Flags: TCloseFlags): TModalResult;
|
||||||
Flags: TCloseFlags): TModalResult;
|
|
||||||
function OpenEditorFile(AFileName:string; PageIndex, WindowIndex: integer;
|
function OpenEditorFile(AFileName:string; PageIndex, WindowIndex: integer;
|
||||||
AEditorInfo: TUnitEditorInfo;
|
AEditorInfo: TUnitEditorInfo;
|
||||||
Flags: TOpenFlags;
|
Flags: TOpenFlags;
|
||||||
@ -980,6 +980,24 @@ begin
|
|||||||
Result:=mrOk;
|
Result:=mrOk;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TLazSourceFileManager.SaveEditorFile(const Filename: string;
|
||||||
|
Flags: TSaveFlags): TModalResult;
|
||||||
|
var
|
||||||
|
UnitIndex: Integer;
|
||||||
|
AnUnitInfo: TUnitInfo;
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
Result:=mrOk;
|
||||||
|
if Filename='' then exit;
|
||||||
|
UnitIndex:=Project1.IndexOfFilename(TrimFilename(Filename),[pfsfOnlyEditorFiles]);
|
||||||
|
if UnitIndex<0 then exit;
|
||||||
|
AnUnitInfo:=Project1.Units[UnitIndex];
|
||||||
|
for i := 0 to AnUnitInfo.OpenEditorInfoCount-1 do begin
|
||||||
|
Result:=SaveEditorFile(AnUnitInfo.OpenEditorInfo[i].EditorComponent, Flags);
|
||||||
|
if Result <> mrOK then Break;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
function TLazSourceFileManager.CloseEditorFile(AEditor: TSourceEditorInterface;
|
function TLazSourceFileManager.CloseEditorFile(AEditor: TSourceEditorInterface;
|
||||||
Flags: TCloseFlags): TModalResult;
|
Flags: TCloseFlags): TModalResult;
|
||||||
var
|
var
|
||||||
@ -1113,11 +1131,9 @@ var
|
|||||||
begin
|
begin
|
||||||
Result:=mrOk;
|
Result:=mrOk;
|
||||||
if Filename='' then exit;
|
if Filename='' then exit;
|
||||||
UnitIndex:=Project1.IndexOfFilename(TrimFilename(Filename),
|
UnitIndex:=Project1.IndexOfFilename(TrimFilename(Filename),[pfsfOnlyEditorFiles]);
|
||||||
[pfsfOnlyEditorFiles]);
|
|
||||||
if UnitIndex<0 then exit;
|
if UnitIndex<0 then exit;
|
||||||
AnUnitInfo:=Project1.Units[UnitIndex];
|
AnUnitInfo:=Project1.Units[UnitIndex];
|
||||||
Result:=mrOk;
|
|
||||||
while (AnUnitInfo.OpenEditorInfoCount > 0) and (Result = mrOK) do
|
while (AnUnitInfo.OpenEditorInfoCount > 0) and (Result = mrOK) do
|
||||||
Result:=CloseEditorFile(AnUnitInfo.OpenEditorInfo[0].EditorComponent, Flags);
|
Result:=CloseEditorFile(AnUnitInfo.OpenEditorInfo[0].EditorComponent, Flags);
|
||||||
end;
|
end;
|
||||||
@ -2047,8 +2063,7 @@ begin
|
|||||||
and AnUnitInfo.IsPartOfProject
|
and AnUnitInfo.IsPartOfProject
|
||||||
and (Project1.MainUnitID<>i)
|
and (Project1.MainUnitID<>i)
|
||||||
and (AnUnitInfo.OpenEditorInfoCount > 0) then begin
|
and (AnUnitInfo.OpenEditorInfoCount > 0) then begin
|
||||||
SaveFileFlags:=[sfSaveAs,sfProjectSaving]
|
SaveFileFlags:=[sfSaveAs,sfProjectSaving]+[sfCheckAmbiguousFiles]*Flags;
|
||||||
+[sfCheckAmbiguousFiles]*Flags;
|
|
||||||
if sfSaveToTestDir in Flags then begin
|
if sfSaveToTestDir in Flags then begin
|
||||||
if AnUnitInfo.IsPartOfProject or AnUnitInfo.IsVirtual then
|
if AnUnitInfo.IsPartOfProject or AnUnitInfo.IsVirtual then
|
||||||
Include(SaveFileFlags,sfSaveToTestDir);
|
Include(SaveFileFlags,sfSaveToTestDir);
|
||||||
@ -2068,8 +2083,7 @@ begin
|
|||||||
AnUnitInfo:=Project1.UnitWithEditorComponent(SrcEdit);
|
AnUnitInfo:=Project1.UnitWithEditorComponent(SrcEdit);
|
||||||
if (Project1.MainUnitID>=0) and (Project1.MainUnitInfo = AnUnitInfo) then
|
if (Project1.MainUnitID>=0) and (Project1.MainUnitInfo = AnUnitInfo) then
|
||||||
continue;
|
continue;
|
||||||
SaveFileFlags:=[sfProjectSaving]
|
SaveFileFlags:=[sfProjectSaving]+Flags*[sfCheckAmbiguousFiles];
|
||||||
+Flags*[sfCheckAmbiguousFiles];
|
|
||||||
if AnUnitInfo = nil
|
if AnUnitInfo = nil
|
||||||
then begin
|
then begin
|
||||||
// consistency check
|
// consistency check
|
||||||
|
|||||||
@ -206,6 +206,8 @@ type
|
|||||||
deprecated 'use method with EditorObject'; // deprecated in 0.9.29 March 2010
|
deprecated 'use method with EditorObject'; // deprecated in 0.9.29 March 2010
|
||||||
function DoSaveEditorFile(AEditor: TSourceEditorInterface;
|
function DoSaveEditorFile(AEditor: TSourceEditorInterface;
|
||||||
Flags: TSaveFlags): TModalResult; virtual; abstract;
|
Flags: TSaveFlags): TModalResult; virtual; abstract;
|
||||||
|
function DoSaveEditorFile(const Filename: string;
|
||||||
|
Flags: TSaveFlags): TModalResult; virtual; abstract;
|
||||||
function DoSaveAll(Flags: TSaveFlags): TModalResult; virtual; abstract;
|
function DoSaveAll(Flags: TSaveFlags): TModalResult; virtual; abstract;
|
||||||
function DoCloseEditorFile(PageIndex:integer;
|
function DoCloseEditorFile(PageIndex:integer;
|
||||||
Flags: TCloseFlags):TModalResult; virtual; abstract;
|
Flags: TCloseFlags):TModalResult; virtual; abstract;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user