IDE: Fix jumping to next/previous error from the Search menu. Issue #35352.

git-svn-id: trunk@60933 -
This commit is contained in:
juha 2019-04-12 06:05:49 +00:00
parent 4b03bea9b7
commit 0899ea0c29
3 changed files with 20 additions and 5 deletions

View File

@ -2206,6 +2206,8 @@ begin
MainIDEBar.itmGotoLine.OnClick := @SourceEditorManager.GotoLineClicked;
MainIDEBar.itmJumpBack.OnClick := @SourceEditorManager.JumpBackClicked;
MainIDEBar.itmJumpForward.OnClick := @SourceEditorManager.JumpForwardClicked;
MainIDEBar.itmJumpToNextError.OnClick := @SourceEditorManager.JumpToNextErrorClicked;
MainIDEBar.itmJumpToPrevError.OnClick := @SourceEditorManager.JumpToPrevErrorClicked;
MainIDEBar.itmAddJumpPoint.OnClick := @SourceEditorManager.AddJumpPointClicked;
MainIDEBar.itmJumpHistory.OnClick := @SourceEditorManager.ViewJumpHistoryClicked;
MainIDEBar.itmJumpToNextBookmark.OnClick := @SourceEditorManager.BookMarkNextClicked;

View File

@ -1113,7 +1113,7 @@ begin
CreateMenuItem(ParentMI,itmSearchFindNext,'itmSearchFindNext',lisMenuFindNext, 'menu_search_find_next');
CreateMenuItem(ParentMI,itmSearchFindPrevious,'itmSearchFindPrevious',lisMenuFindPrevious, 'menu_search_find_previous');
CreateMenuItem(ParentMI,itmSearchFindInFiles,'itmSearchFindInFiles',lisMenuFindInFiles, 'menu_search_files');
CreateMenuItem(ParentMI, itmSearchReplace, 'itmSearchReplace', lisBtnDlgReplace, 'menu_search_replace');
CreateMenuItem(ParentMI,itmSearchReplace, 'itmSearchReplace', lisBtnDlgReplace, 'menu_search_replace');
CreateMenuItem(ParentMI,itmIncrementalFind,'itmIncrementalFind',lisMenuIncrementalFind, 'menu_search_incremental');
CreateMenuSeparatorSection(mnuSearch,itmJumpings,'itmJumpings');

View File

@ -1122,6 +1122,8 @@ type
procedure GotoLineClicked(Sender: TObject);
procedure JumpBackClicked(Sender: TObject);
procedure JumpForwardClicked(Sender: TObject);
procedure JumpToNextErrorClicked(Sender: TObject);
procedure JumpToPrevErrorClicked(Sender: TObject);
procedure AddJumpPointClicked(Sender: TObject);
procedure AddCustomJumpPoint(ACaretXY: TPoint; ATopLine: integer;
AEditor: TSourceEditor; DeleteForwardHistory: boolean);
@ -1178,7 +1180,7 @@ type
procedure CloseFile(AEditor: TSourceEditorInterface);
procedure HideHint;
// history jumping
procedure HistoryJump(Sender: TObject; CloseAction: TJumpHistoryAction);
procedure HistoryJump(Sender: TObject; JumpAction: TJumpHistoryAction);
private
// Hints
FHints: TSourceEditorHintWindowManager;
@ -10380,6 +10382,16 @@ begin
if ActiveSourceWindow <> nil then HistoryJump(Sender,jhaForward);
end;
procedure TSourceEditorManager.JumpToNextErrorClicked(Sender: TObject);
begin
LazarusIDE.DoJumpToNextError(true);
end;
procedure TSourceEditorManager.JumpToPrevErrorClicked(Sender: TObject);
begin
LazarusIDE.DoJumpToNextError(false);
end;
procedure TSourceEditorManager.JumpToImplementationClicked(Sender: TObject);
begin
JumpToSection(jmpImplementation);
@ -10973,15 +10985,16 @@ begin
end;
procedure TSourceEditorManager.HistoryJump(Sender: TObject;
CloseAction: TJumpHistoryAction);
var NewCaretXY: TPoint;
JumpAction: TJumpHistoryAction);
var
NewCaretXY: TPoint;
NewTopLine: integer;
NewEditor: TSourceEditor;
begin
if Assigned(OnJumpToHistoryPoint) then begin
NewCaretXY.X:=-1;
NewEditor:=nil;
OnJumpToHistoryPoint(NewCaretXY,NewTopLine,NewEditor,CloseAction);
OnJumpToHistoryPoint(NewCaretXY,NewTopLine,NewEditor,JumpAction);
if NewEditor<>nil then begin
ActiveEditor := NewEditor;
ShowActiveWindowOnTop(True);