IDE: Move SetRecentFilesMenu from TMainIDE to TMainIDEBase

git-svn-id: trunk@38767 -
This commit is contained in:
juha 2012-09-20 22:01:44 +00:00
parent d3d1b06f77
commit 08589a996b
3 changed files with 14 additions and 12 deletions

View File

@ -190,7 +190,7 @@ type
procedure mnuNewFormClicked(Sender: TObject); procedure mnuNewFormClicked(Sender: TObject);
procedure mnuNewOtherClicked(Sender: TObject); procedure mnuNewOtherClicked(Sender: TObject);
procedure mnuOpenClicked(Sender: TObject); procedure mnuOpenClicked(Sender: TObject);
procedure mnuOpenRecentClicked(Sender: TObject); procedure mnuOpenRecentClicked(Sender: TObject); override;
procedure mnuRevertClicked(Sender: TObject); procedure mnuRevertClicked(Sender: TObject);
procedure mnuSaveClicked(Sender: TObject); procedure mnuSaveClicked(Sender: TObject);
procedure mnuSaveAsClicked(Sender: TObject); procedure mnuSaveAsClicked(Sender: TObject);
@ -726,7 +726,6 @@ type
function DoResetToolStatus(AFlags: TResetToolFlags): boolean; override; function DoResetToolStatus(AFlags: TResetToolFlags): boolean; override;
function DoCallProjectChangedHandler( function DoCallProjectChangedHandler(
HandlerType: TLazarusIDEHandlerType): TModalResult; HandlerType: TLazarusIDEHandlerType): TModalResult;
procedure SetRecentFilesMenu;
// files/units // files/units
function DoNewFile(NewFileDescriptor: TProjectFileDescriptor; function DoNewFile(NewFileDescriptor: TProjectFileDescriptor;
@ -2452,13 +2451,6 @@ begin
Result := inherited DoCallProjectChangedHandler(HandlerType, Project1); Result := inherited DoCallProjectChangedHandler(HandlerType, Project1);
end; end;
procedure TMainIDE.SetRecentFilesMenu;
begin
SetRecentSubMenu(itmFileRecentOpen,
EnvironmentOptions.RecentOpenFiles,
@mnuOpenRecentClicked);
end;
procedure TMainIDE.SetupFileMenu; procedure TMainIDE.SetupFileMenu;
begin begin
inherited SetupFileMenu; inherited SetupFileMenu;

View File

@ -82,6 +82,7 @@ type
TMainIDEBase = class(TMainIDEInterface) TMainIDEBase = class(TMainIDEInterface)
procedure mnuOpenProjectClicked(Sender: TObject); virtual; abstract; procedure mnuOpenProjectClicked(Sender: TObject); virtual; abstract;
procedure mnuOpenRecentClicked(Sender: TObject); virtual; abstract;
private private
FToolStatus: TIDEToolStatus; FToolStatus: TIDEToolStatus;
FWindowMenuActiveForm: TCustomForm; FWindowMenuActiveForm: TCustomForm;
@ -140,6 +141,7 @@ type
procedure CreateOftenUsedForms; virtual; abstract; procedure CreateOftenUsedForms; virtual; abstract;
function GetMainBar: TComponent; override; function GetMainBar: TComponent; override;
procedure SetRecentProjectFilesMenu; procedure SetRecentProjectFilesMenu;
procedure SetRecentFilesMenu;
procedure GetUnitInfoForDesigner(ADesigner: TIDesigner; procedure GetUnitInfoForDesigner(ADesigner: TIDesigner;
out ActiveSourceEditor: TSourceEditorInterface; out ActiveSourceEditor: TSourceEditorInterface;
@ -295,6 +297,13 @@ begin
@mnuOpenProjectClicked); @mnuOpenProjectClicked);
end; end;
procedure TMainIDEBase.SetRecentFilesMenu;
begin
SetRecentSubMenu(itmFileRecentOpen,
EnvironmentOptions.RecentOpenFiles,
@mnuOpenRecentClicked);
end;
procedure TMainIDEBase.DoMnuWindowClicked(Sender: TObject); procedure TMainIDEBase.DoMnuWindowClicked(Sender: TObject);
begin begin
UpdateWindowMenu(True); UpdateWindowMenu(True);

View File

@ -182,6 +182,7 @@ var
SourceFileMgrSingleton: TLazSourceFileManager = nil; SourceFileMgrSingleton: TLazSourceFileManager = nil;
function SourceFileMgr: TLazSourceFileManager; function SourceFileMgr: TLazSourceFileManager;
// Return always the same instance of SourceFileManager. Create at the first time.
begin begin
if SourceFileMgrSingleton = nil then if SourceFileMgrSingleton = nil then
SourceFileMgrSingleton := TLazSourceFileManager.Create; SourceFileMgrSingleton := TLazSourceFileManager.Create;
@ -945,7 +946,7 @@ begin
and (not (cfProjectClosing in Flags)) then and (not (cfProjectClosing in Flags)) then
begin begin
EnvironmentOptions.AddToRecentOpenFiles(AnUnitInfo.Filename); EnvironmentOptions.AddToRecentOpenFiles(AnUnitInfo.Filename);
TMainIDE(MainIDE).SetRecentFilesMenu; MainIDE.SetRecentFilesMenu;
end; end;
// close form soft (keep it if used by another component) // close form soft (keep it if used by another component)
@ -2951,7 +2952,7 @@ begin
NewFilePath:=ExtractFilePath(NewFilename); NewFilePath:=ExtractFilePath(NewFilename);
EnvironmentOptions.RemoveFromRecentOpenFiles(OldFilename); EnvironmentOptions.RemoveFromRecentOpenFiles(OldFilename);
EnvironmentOptions.AddToRecentOpenFiles(NewFilename); EnvironmentOptions.AddToRecentOpenFiles(NewFilename);
TMainIDE(MainIDE).SetRecentFilesMenu; // Must refer to mainwindow MainIDE.SetRecentFilesMenu;
// add new path to unit path // add new path to unit path
if AnUnitInfo.IsPartOfProject if AnUnitInfo.IsPartOfProject