IDE: further migration external tools

git-svn-id: trunk@42363 -
This commit is contained in:
mattias 2013-08-05 20:00:02 +00:00
parent 7bbbab1155
commit 2ea2507b77

View File

@ -843,7 +843,9 @@ type
// external tools // external tools
function PrepareForCompile: TModalResult; override; function PrepareForCompile: TModalResult; override;
function OnRunExternalTool(Tool: TIDEExternalToolOptions): {$IFDEF EnableNewExtTools}boolean{$ELSE}TModalResult{$ENDIF}; {$IFNDEF EnableNewExtTools}
function OnRunExternalTool(Tool: TIDEExternalToolOptions): TModalResult;
{$ENDIF}
function DoRunExternalTool(Index: integer; ShowAbort: Boolean): TModalResult; function DoRunExternalTool(Index: integer; ShowAbort: Boolean): TModalResult;
function DoSaveBuildIDEConfigs(Flags: TBuildLazarusFlags): TModalResult; override; function DoSaveBuildIDEConfigs(Flags: TBuildLazarusFlags): TModalResult; override;
function DoExampleManager: TModalResult; override; function DoExampleManager: TModalResult; override;
@ -1341,8 +1343,8 @@ begin
FWaitForClose := False; FWaitForClose := False;
SetupDialogs; SetupDialogs;
RunExternalTool:=@OnRunExternalTool;
{$IFNDEF EnableNewExtTools} {$IFNDEF EnableNewExtTools}
RunExternalTool:=@OnRunExternalTool;
{$IFDEF UseAsyncProcess} {$IFDEF UseAsyncProcess}
if Widgetset.GetLCLCapability(lcAsyncProcess) = 1 then if Widgetset.GetLCLCapability(lcAsyncProcess) = 1 then
TOutputFilterProcess := TAsyncProcess TOutputFilterProcess := TAsyncProcess
@ -4647,7 +4649,13 @@ var
begin begin
if not (Sender is TIDEMenuItem) then exit; if not (Sender is TIDEMenuItem) then exit;
Index:=itmCustomTools.IndexOf(TIDEMenuItem(Sender))-1; Index:=itmCustomTools.IndexOf(TIDEMenuItem(Sender))-1;
if (Index<0) or (Index>=ExternalTools.Count) then exit; if (Index<0)
{$IFDEF EnableNewExtTools}
or (Index>=ExternalToolMenuItems.Count)
{$ELSE}
or (Index>=ExternalTools.Count)
{$ENDIF}
then exit;
DoRunExternalTool(Index,false); DoRunExternalTool(Index,false);
end; end;
@ -8105,13 +8113,21 @@ var
var var
CurMenuItem: TIDEMenuItem; CurMenuItem: TIDEMenuItem;
i, Index: integer; i, Index: integer;
{$IFDEF EnableNewExtTools}
ExtTool: TExternalToolMenuItem;
{$ELSE}
ExtTool: TExternalToolOptions; ExtTool: TExternalToolOptions;
{$ENDIF}
begin begin
i:=1; i:=1;
Index:=0; Index:=0;
while (i<itmCustomTools.Count) do begin while (i<itmCustomTools.Count) do begin
CurMenuItem:=itmCustomTools[i]; CurMenuItem:=itmCustomTools[i];
{$IFDEF EnableNewExtTools}
ExtTool:=ExternalToolMenuItems[Index];
{$ELSE}
ExtTool:=ExternalTools[Index]; ExtTool:=ExternalTools[Index];
{$ENDIF}
CurMenuItem.Caption:=ExtTool.Title; CurMenuItem.Caption:=ExtTool.Title;
if CurMenuItem is TIDEMenuCommand then if CurMenuItem is TIDEMenuCommand then
TIDEMenuCommand(CurMenuItem).Command:= TIDEMenuCommand(CurMenuItem).Command:=
@ -8123,7 +8139,11 @@ var
end; end;
begin begin
{$IFDEF EnableNewExtTools}
ToolCount:=ExternalToolMenuItems.Count;
{$ELSE}
ToolCount:=ExternalTools.Count; ToolCount:=ExternalTools.Count;
{$ENDIF}
CreateToolMenuItems; CreateToolMenuItems;
SetToolMenuItems; SetToolMenuItems;
end; end;
@ -8148,12 +8168,14 @@ begin
MainBuildBoss.RescanCompilerDefines(false,false,false,false); MainBuildBoss.RescanCompilerDefines(false,false,false,false);
end; end;
function TMainIDE.OnRunExternalTool(Tool: TIDEExternalToolOptions): {$IFDEF EnableNewExtTools}boolean{$ELSE}TModalResult{$ENDIF}; {$IFNDEF EnableNewExtTools}
function TMainIDE.OnRunExternalTool(Tool: TIDEExternalToolOptions): TModalResult;
begin begin
SourceEditorManager.ClearErrorLines; SourceEditorManager.ClearErrorLines;
Result:=ExternalTools.Run(Tool,GlobalMacroList,false); Result:=ExternalTools.Run(Tool,GlobalMacroList,false);
DoCheckFilesOnDisk; DoCheckFilesOnDisk;
end; end;
{$ENDIF}
function TMainIDE.DoCheckSyntax: TModalResult; function TMainIDE.DoCheckSyntax: TModalResult;
var var
@ -8179,9 +8201,13 @@ begin
NewTopLine,ErrorMsg) then NewTopLine,ErrorMsg) then
begin begin
SourceFileMgr.ArrangeSourceEditorAndMessageView(false); SourceFileMgr.ArrangeSourceEditorAndMessageView(false);
{$IFDEF EnableNewExtTools}
MessagesView.AddCustomMessage(mluImportant,lisMenuQuickSyntaxCheckOk);
{$ELSE}
MessagesView.ClearTillLastSeparator; MessagesView.ClearTillLastSeparator;
MessagesView.AddSeparator; MessagesView.AddSeparator;
MessagesView.AddMsg(lisMenuQuickSyntaxCheckOk,'',-1); MessagesView.AddMsg(lisMenuQuickSyntaxCheckOk,'',-1);
{$ENDIF}
end else begin end else begin
DoJumpToCodeToolBossError; DoJumpToCodeToolBossError;
end; end;
@ -8454,7 +8480,7 @@ function TMainIDE.DoPublishModule(Options: TPublishModuleOptions;
var var
SrcDir, DestDir: string; SrcDir, DestDir: string;
NewProjectFilename: string; NewProjectFilename: string;
Tool: TExternalToolOptions; Tool: TIDEExternalToolOptions;
CommandAfter, CmdAfterExe, CmdAfterParams: string; CommandAfter, CmdAfterExe, CmdAfterParams: string;
CurProject: TProject; CurProject: TProject;
TempCmd: String; TempCmd: String;
@ -8566,7 +8592,7 @@ begin
// execute 'CommandAfter' // execute 'CommandAfter'
if (CmdAfterExe<>'') then begin if (CmdAfterExe<>'') then begin
if FileIsExecutableCached(CmdAfterExe) then begin if FileIsExecutableCached(CmdAfterExe) then begin
Tool:=TExternalToolOptions.Create; Tool:=TIDEExternalToolOptions.Create;
Tool.Filename:=CmdAfterExe; Tool.Filename:=CmdAfterExe;
Tool.Title:=lisCommandAfterPublishingModule; Tool.Title:=lisCommandAfterPublishingModule;
Tool.WorkingDirectory:=DestDir; Tool.WorkingDirectory:=DestDir;