From c8cb9255269c16dd4b692208cf02b8657cebdeb5 Mon Sep 17 00:00:00 2001 From: ondrej Date: Tue, 3 Nov 2015 15:06:42 +0000 Subject: [PATCH] IDE: enhance LazIDEIntf with more MessagesView capabilities. git-svn-id: trunk@50213 - --- components/ideintf/lazideintf.pas | 9 ++++++++- ide/main.pp | 13 ++++++++++--- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/components/ideintf/lazideintf.pas b/components/ideintf/lazideintf.pas index 5e2c2121d4..30f6186810 100644 --- a/components/ideintf/lazideintf.pas +++ b/components/ideintf/lazideintf.pas @@ -339,10 +339,12 @@ type // progress and error messages function ShowProgress(const SomeText: string; Step, MaxStep: integer): boolean; virtual; abstract; // False if canceled by user + function GetSelectedCompilerMessage: TMessageLine; virtual; abstract; function DoJumpToCompilerMessage(FocusEditor: boolean; Msg: TMessageLine = nil // if nil then it jumps to first message ): boolean; virtual; abstract; - procedure DoJumpToNextError(DirectionDown: boolean); virtual; abstract; + procedure DoJumpToNextCompilerMessage(aMinUrgency: TMessageLineUrgency; DirectionDown: boolean); virtual; abstract; + procedure DoJumpToNextError(DirectionDown: boolean); procedure DoShowMessagesView(BringToFront: boolean = true); virtual; abstract; function DoCheckFilesOnDisk(Instantaneous: boolean = false): TModalResult; virtual; abstract; // call this after changing TargetOS/TargetCPU of the ActiveProject @@ -630,6 +632,11 @@ begin AComponentPaletteClassSelected); end; +procedure TLazIDEInterface.DoJumpToNextError(DirectionDown: boolean); +begin + DoJumpToNextCompilerMessage(mluError, DirectionDown); +end; + constructor TLazIDEInterface.Create(TheOwner: TComponent); begin LazarusIDE:=Self; diff --git a/ide/main.pp b/ide/main.pp index 311f4cd720..7439e50209 100644 --- a/ide/main.pp +++ b/ide/main.pp @@ -917,9 +917,10 @@ type function DoConvertDelphiPackage(const DelphiFilename: string): TModalResult; // message view + function GetSelectedCompilerMessage: TMessageLine; override; function DoJumpToCompilerMessage(FocusEditor: boolean; Msg: TMessageLine = nil ): boolean; override; - procedure DoJumpToNextError(DirectionDown: boolean); override; + procedure DoJumpToNextCompilerMessage(aMinUrgency: TMessageLineUrgency; DirectionDown: boolean); override; procedure DoShowMessagesView(BringToFront: boolean = true); override; // methods for debugging, compiling and external tools @@ -8302,11 +8303,12 @@ begin end; end; -procedure TMainIDE.DoJumpToNextError(DirectionDown: boolean); +procedure TMainIDE.DoJumpToNextCompilerMessage( + aMinUrgency: TMessageLineUrgency; DirectionDown: boolean); var Msg: TMessageLine; begin - if not MessagesView.SelectNextUrgentMessage(mluError,true,DirectionDown) then + if not MessagesView.SelectNextUrgentMessage(aMinUrgency,true,DirectionDown) then exit; Msg:=MessagesView.GetSelectedLine; if Msg=nil then exit; @@ -11893,6 +11895,11 @@ begin Result:=nil; end; +function TMainIDE.GetSelectedCompilerMessage: TMessageLine; +begin + Result:=MessagesView.GetSelectedLine; +end; + function TMainIDE.GetProjectFileWithDesigner(ADesigner: TIDesigner): TLazProjectFile; var AComponent: TComponent;