mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-12 09:39:16 +02:00
implemented IDE command ecSetFreeBookmark
git-svn-id: trunk@7579 -
This commit is contained in:
parent
e063082bb7
commit
2fae0d3819
@ -183,8 +183,9 @@ const
|
|||||||
ecGotoEditor0 = ecGotoEditor9 + 1;
|
ecGotoEditor0 = ecGotoEditor9 + 1;
|
||||||
|
|
||||||
// marker
|
// marker
|
||||||
ecPrevBookmark = ecUserFirst + 381;
|
ecSetFreeBookmark = ecUserFirst + 381;
|
||||||
ecNextBookmark = ecUserFirst + 382;
|
ecPrevBookmark = ecUserFirst + 382;
|
||||||
|
ecNextBookmark = ecUserFirst + 383;
|
||||||
|
|
||||||
// compile menu
|
// compile menu
|
||||||
ecBuild = ecUserFirst + 400;
|
ecBuild = ecUserFirst + 400;
|
||||||
@ -554,6 +555,7 @@ begin
|
|||||||
ecOpenFileAtCursor: SetResult(VK_RETURN,[ssCtrl],VK_UNKNOWN,[]);
|
ecOpenFileAtCursor: SetResult(VK_RETURN,[ssCtrl],VK_UNKNOWN,[]);
|
||||||
|
|
||||||
// marker
|
// marker
|
||||||
|
ecSetFreeBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
ecPrevBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
ecPrevBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
ecNextBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
ecNextBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
ecGotoMarker0: SetResult(VK_0,[ssCtrl],VK_UNKNOWN,[]);
|
ecGotoMarker0: SetResult(VK_0,[ssCtrl],VK_UNKNOWN,[]);
|
||||||
@ -859,6 +861,7 @@ begin
|
|||||||
ecOpenFileAtCursor: SetResult(VK_RETURN,[ssCtrl],VK_UNKNOWN,[],VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
ecOpenFileAtCursor: SetResult(VK_RETURN,[ssCtrl],VK_UNKNOWN,[],VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
|
|
||||||
// marker
|
// marker
|
||||||
|
ecSetFreeBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
ecPrevBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
ecPrevBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
ecNextBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
ecNextBookmark: SetResult(VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
ecGotoMarker0: SetResult(VK_Q,[ssCtrl],VK_0,[],VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
ecGotoMarker0: SetResult(VK_Q,[ssCtrl],VK_0,[],VK_UNKNOWN,[],VK_UNKNOWN,[]);
|
||||||
@ -1399,6 +1402,7 @@ begin
|
|||||||
ecLineSelect : Result:= srkmecLineSelect;
|
ecLineSelect : Result:= srkmecLineSelect;
|
||||||
ecAutoCompletion : Result:= srkmecAutoCompletion;
|
ecAutoCompletion : Result:= srkmecAutoCompletion;
|
||||||
ecUserFirst : Result:= srkmecPrevBookmark;
|
ecUserFirst : Result:= srkmecPrevBookmark;
|
||||||
|
ecSetFreeBookmark : Result:= srkmecSetFreeBookmark;
|
||||||
ecPrevBookmark : Result:= srkmecPrevBookmark;
|
ecPrevBookmark : Result:= srkmecPrevBookmark;
|
||||||
ecNextBookmark : Result:= srkmecNextBookmark;
|
ecNextBookmark : Result:= srkmecNextBookmark;
|
||||||
ecGotoMarker0 ..
|
ecGotoMarker0 ..
|
||||||
@ -2323,6 +2327,7 @@ begin
|
|||||||
|
|
||||||
// marker - without menu items in the IDE bar
|
// marker - without menu items in the IDE bar
|
||||||
C:=Categories[AddCategory('Marker',srkmCatMarker,caSrcEditOnly)];
|
C:=Categories[AddCategory('Marker',srkmCatMarker,caSrcEditOnly)];
|
||||||
|
AddDefault(C,'Set free Bookmark',ecSetFreeBookmark);
|
||||||
AddDefault(C,'Previous Bookmark',ecPrevBookmark);
|
AddDefault(C,'Previous Bookmark',ecPrevBookmark);
|
||||||
AddDefault(C,'Next Bookmark',ecNextBookmark);
|
AddDefault(C,'Next Bookmark',ecNextBookmark);
|
||||||
AddDefault(C,'Go to marker 0',ecGotoMarker0);
|
AddDefault(C,'Go to marker 0',ecGotoMarker0);
|
||||||
|
@ -184,6 +184,7 @@ resourcestring
|
|||||||
lisMenuGotoIncludeDirective = 'Goto include directive';
|
lisMenuGotoIncludeDirective = 'Goto include directive';
|
||||||
lisMenuJumpToNextError = 'Jump to next error';
|
lisMenuJumpToNextError = 'Jump to next error';
|
||||||
lisMenuJumpToPrevError = 'Jump to previous error';
|
lisMenuJumpToPrevError = 'Jump to previous error';
|
||||||
|
lisMenuSetFreeBookmark = 'Set a free bookmark';
|
||||||
lisMenuJumpToNextBookmark = 'Jump to next bookmark';
|
lisMenuJumpToNextBookmark = 'Jump to next bookmark';
|
||||||
lisMenuJumpToPrevBookmark = 'Jump to previous bookmark';
|
lisMenuJumpToPrevBookmark = 'Jump to previous bookmark';
|
||||||
|
|
||||||
@ -1162,6 +1163,7 @@ resourcestring
|
|||||||
uemCopy = 'Copy';
|
uemCopy = 'Copy';
|
||||||
uemPaste = 'Paste';
|
uemPaste = 'Paste';
|
||||||
uemGotoBookmark = '&Goto Bookmark';
|
uemGotoBookmark = '&Goto Bookmark';
|
||||||
|
uemSetFreeBookmark = 'Set a free Bookmark';
|
||||||
uemNextBookmark = 'Goto next Bookmark';
|
uemNextBookmark = 'Goto next Bookmark';
|
||||||
uemPrevBookmark = 'Goto previous Bookmark';
|
uemPrevBookmark = 'Goto previous Bookmark';
|
||||||
uemBookmarkN = 'Bookmark';
|
uemBookmarkN = 'Bookmark';
|
||||||
@ -1318,6 +1320,7 @@ resourcestring
|
|||||||
srkmecLineSelect = 'Line selection mode';
|
srkmecLineSelect = 'Line selection mode';
|
||||||
srkmecAutoCompletion = 'Code template completion';
|
srkmecAutoCompletion = 'Code template completion';
|
||||||
srkmecUserFirst = 'User First';
|
srkmecUserFirst = 'User First';
|
||||||
|
srkmecSetFreeBookmark = 'Set a free Bookmark';
|
||||||
srkmecPrevBookmark = 'Previous Bookmark';
|
srkmecPrevBookmark = 'Previous Bookmark';
|
||||||
srkmecNextBookmark = 'Next Bookmark';
|
srkmecNextBookmark = 'Next Bookmark';
|
||||||
srkmecGotoMarker = 'Go to Marker %d';
|
srkmecGotoMarker = 'Go to Marker %d';
|
||||||
|
@ -157,6 +157,7 @@ type
|
|||||||
itmJumpHistory: TMenuItem;
|
itmJumpHistory: TMenuItem;
|
||||||
itmJumpToNextError: TMenuItem;
|
itmJumpToNextError: TMenuItem;
|
||||||
itmJumpToPrevError: TMenuItem;
|
itmJumpToPrevError: TMenuItem;
|
||||||
|
itmSetFreeBookmark: TMenuItem;
|
||||||
itmJumpToNextBookmark: TMenuItem;
|
itmJumpToNextBookmark: TMenuItem;
|
||||||
itmJumpToPrevBookmark: TMenuItem;
|
itmJumpToPrevBookmark: TMenuItem;
|
||||||
itmFindBlockOtherEnd: TMenuItem;
|
itmFindBlockOtherEnd: TMenuItem;
|
||||||
|
@ -481,6 +481,7 @@ begin
|
|||||||
CreateMenuItem(ParentMI,itmJumpHistory,'itmJumpHistory',lisMenuViewJumpHistory);
|
CreateMenuItem(ParentMI,itmJumpHistory,'itmJumpHistory',lisMenuViewJumpHistory);
|
||||||
CreateMenuItem(ParentMI,itmJumpToNextError,'itmJumpToNextError',lisMenuJumpToNextError);
|
CreateMenuItem(ParentMI,itmJumpToNextError,'itmJumpToNextError',lisMenuJumpToNextError);
|
||||||
CreateMenuItem(ParentMI,itmJumpToPrevError,'itmJumpToPrevError',lisMenuJumpToPrevError);
|
CreateMenuItem(ParentMI,itmJumpToPrevError,'itmJumpToPrevError',lisMenuJumpToPrevError);
|
||||||
|
CreateMenuItem(ParentMI,itmSetFreeBookmark,'itmSetFreeBookmark',lisMenuSetFreeBookmark);
|
||||||
CreateMenuItem(ParentMI,itmJumpToNextBookmark,'itmJumpToNextBookmark',lisMenuJumpToNextBookmark);
|
CreateMenuItem(ParentMI,itmJumpToNextBookmark,'itmJumpToNextBookmark',lisMenuJumpToNextBookmark);
|
||||||
CreateMenuItem(ParentMI,itmJumpToPrevBookmark,'itmJumpToPrevBookmark',lisMenuJumpToPrevBookmark);
|
CreateMenuItem(ParentMI,itmJumpToPrevBookmark,'itmJumpToPrevBookmark',lisMenuJumpToPrevBookmark);
|
||||||
|
|
||||||
@ -781,6 +782,7 @@ begin
|
|||||||
itmJumpHistory.ShortCut:=CommandToShortCut(ecViewJumpHistory);
|
itmJumpHistory.ShortCut:=CommandToShortCut(ecViewJumpHistory);
|
||||||
itmJumpToNextError.ShortCut:=CommandToShortCut(ecJumpToNextError);
|
itmJumpToNextError.ShortCut:=CommandToShortCut(ecJumpToNextError);
|
||||||
itmJumpToPrevError.ShortCut:=CommandToShortCut(ecJumpToPrevError);
|
itmJumpToPrevError.ShortCut:=CommandToShortCut(ecJumpToPrevError);
|
||||||
|
itmSetFreeBookmark.ShortCut:=CommandToShortCut(ecSetFreeBookmark);
|
||||||
itmJumpToNextBookmark.ShortCut:=CommandToShortCut(ecNextBookmark);
|
itmJumpToNextBookmark.ShortCut:=CommandToShortCut(ecNextBookmark);
|
||||||
itmJumpToPrevBookmark.ShortCut:=CommandToShortCut(ecPrevBookmark);
|
itmJumpToPrevBookmark.ShortCut:=CommandToShortCut(ecPrevBookmark);
|
||||||
itmFindBlockOtherEnd.ShortCut:=CommandToShortCut(ecFindBlockOtherEnd);
|
itmFindBlockOtherEnd.ShortCut:=CommandToShortCut(ecFindBlockOtherEnd);
|
||||||
|
@ -350,6 +350,7 @@ type
|
|||||||
CopyMenuItem: TMenuItem;
|
CopyMenuItem: TMenuItem;
|
||||||
PasteMenuItem: TMenuItem;
|
PasteMenuItem: TMenuItem;
|
||||||
GotoBookmarkMenuItem: TMenuItem;
|
GotoBookmarkMenuItem: TMenuItem;
|
||||||
|
SetFreeBookmarkMenuItem: TMenuItem;
|
||||||
NextBookmarkMenuItem: TMenuItem;
|
NextBookmarkMenuItem: TMenuItem;
|
||||||
PrevBookmarkMenuItem: TMenuItem;
|
PrevBookmarkMenuItem: TMenuItem;
|
||||||
MoveEditorLeftMenuItem: TMenuItem;
|
MoveEditorLeftMenuItem: TMenuItem;
|
||||||
@ -385,7 +386,9 @@ type
|
|||||||
procedure BookMarkPrevClicked(Sender: TObject);
|
procedure BookMarkPrevClicked(Sender: TObject);
|
||||||
procedure BookMarkGotoClicked(Sender: TObject);
|
procedure BookMarkGotoClicked(Sender: TObject);
|
||||||
procedure BookMarkSet(Value: Integer);
|
procedure BookMarkSet(Value: Integer);
|
||||||
|
procedure BookMarkSetFree;
|
||||||
procedure BookMarkSetClicked(Sender: TObject);
|
procedure BookMarkSetClicked(Sender: TObject);
|
||||||
|
procedure BookmarkSetFreeClicked(Sender: TObject);
|
||||||
procedure BookMarkToggle(Value: Integer);
|
procedure BookMarkToggle(Value: Integer);
|
||||||
procedure EditorPropertiesClicked(Sender: TObject);
|
procedure EditorPropertiesClicked(Sender: TObject);
|
||||||
procedure FindDeclarationClicked(Sender: TObject);
|
procedure FindDeclarationClicked(Sender: TObject);
|
||||||
@ -711,6 +714,9 @@ var
|
|||||||
SrcEditMenuCut: TIDEMenuCommand;
|
SrcEditMenuCut: TIDEMenuCommand;
|
||||||
SrcEditMenuCopy: TIDEMenuCommand;
|
SrcEditMenuCopy: TIDEMenuCommand;
|
||||||
SrcEditMenuPaste: TIDEMenuCommand;
|
SrcEditMenuPaste: TIDEMenuCommand;
|
||||||
|
SrcEditMenuNextBookmark: TIDEMenuCommand;
|
||||||
|
SrcEditMenuPrevBookmark: TIDEMenuCommand;
|
||||||
|
SrcEditMenuSetFreeBookmark: TIDEMenuCommand;
|
||||||
SrcEditMenuAddBreakpoint: TIDEMenuCommand;
|
SrcEditMenuAddBreakpoint: TIDEMenuCommand;
|
||||||
SrcEditMenuRunToCursor: TIDEMenuCommand;
|
SrcEditMenuRunToCursor: TIDEMenuCommand;
|
||||||
SrcEditMenuAddWatchAtCursor: TIDEMenuCommand;
|
SrcEditMenuAddWatchAtCursor: TIDEMenuCommand;
|
||||||
@ -793,6 +799,10 @@ begin
|
|||||||
for I := 0 to 9 do
|
for I := 0 to 9 do
|
||||||
RegisterIDEMenuCommand(SubSubPath,'GotoBookmark'+IntToStr(I),
|
RegisterIDEMenuCommand(SubSubPath,'GotoBookmark'+IntToStr(I),
|
||||||
uemBookmarkN+IntToStr(i));
|
uemBookmarkN+IntToStr(i));
|
||||||
|
SrcEditMenuNextBookmark:=RegisterIDEMenuCommand(SubSubPath,
|
||||||
|
'Goto next Bookmark',uemNextBookmark);
|
||||||
|
SrcEditMenuPrevBookmark:=RegisterIDEMenuCommand(SubSubPath,
|
||||||
|
'Goto previous Bookmark',uemPrevBookmark);
|
||||||
|
|
||||||
// register the Set Bookmarks Submenu
|
// register the Set Bookmarks Submenu
|
||||||
SrcEditSubMenuSetBookmarks:=RegisterIDESubMenu(SubPath,'Set bookmarks',
|
SrcEditSubMenuSetBookmarks:=RegisterIDESubMenu(SubPath,'Set bookmarks',
|
||||||
@ -801,6 +811,8 @@ begin
|
|||||||
for I := 0 to 9 do
|
for I := 0 to 9 do
|
||||||
RegisterIDEMenuCommand(SubSubPath,'SetBookmark'+IntToStr(I),
|
RegisterIDEMenuCommand(SubSubPath,'SetBookmark'+IntToStr(I),
|
||||||
uemBookmarkN+IntToStr(i));
|
uemBookmarkN+IntToStr(i));
|
||||||
|
SrcEditMenuSetFreeBookmark:=RegisterIDEMenuCommand(SubSubPath,
|
||||||
|
'Set a free Bookmark',uemSetFreeBookmark);
|
||||||
|
|
||||||
// register the Debug submenu
|
// register the Debug submenu
|
||||||
SrcEditSubMenuDebug:=RegisterIDESubMenu(SubPath,'Debug',uemDebugWord);
|
SrcEditSubMenuDebug:=RegisterIDESubMenu(SubPath,'Debug',uemDebugWord);
|
||||||
@ -3330,6 +3342,7 @@ begin
|
|||||||
SrcEditSubMenuSetBookmarks.FindByName('SetBookmark'+IntToStr(i))
|
SrcEditSubMenuSetBookmarks.FindByName('SetBookmark'+IntToStr(i))
|
||||||
.OnClickMethod:=@BookMarkSetClicked;
|
.OnClickMethod:=@BookMarkSetClicked;
|
||||||
end;
|
end;
|
||||||
|
SrcEditMenuSetFreeBookmark.OnClickMethod:=@SetFreeBookmarkClicked;
|
||||||
SrcEditMenuNextBookmark.OnClickMethod:=@NextBookmarkClicked;
|
SrcEditMenuNextBookmark.OnClickMethod:=@NextBookmarkClicked;
|
||||||
SrcEditMenuPrevBookmark.OnClickMethod:=@PrevBookmarkClicked;
|
SrcEditMenuPrevBookmark.OnClickMethod:=@PrevBookmarkClicked;
|
||||||
|
|
||||||
@ -3473,16 +3486,26 @@ Begin
|
|||||||
end;
|
end;
|
||||||
SrcPopupMenu.Items.Add(SetBookmarkMenuItem);
|
SrcPopupMenu.Items.Add(SetBookmarkMenuItem);
|
||||||
|
|
||||||
for I := 0 to 9 do
|
begin
|
||||||
Begin
|
for I := 0 to 9 do
|
||||||
SubMenuItem := TMenuItem.Create(Self);
|
Begin
|
||||||
with SubMenuItem do begin
|
SubMenuItem := TMenuItem.Create(Self);
|
||||||
Name:='SubSetBookmarkMenuItem'+IntToStr(I);
|
with SubMenuItem do begin
|
||||||
Caption := uemBookmarkN+IntToStr(i);
|
Name:='SubSetBookmarkMenuItem'+IntToStr(I);
|
||||||
OnClick := @BookmarkSetClicked;
|
Caption := uemBookmarkN+IntToStr(i);
|
||||||
|
OnClick := @BookmarkSetClicked;
|
||||||
|
end;
|
||||||
|
SetBookmarkMenuItem.Add(SubMenuItem);
|
||||||
end;
|
end;
|
||||||
SetBookmarkMenuItem.Add(SubMenuItem);
|
|
||||||
|
SetFreeBookmarkMenuItem := TMenuItem.Create(Self);
|
||||||
|
with SetFreeBookmarkMenuItem do begin
|
||||||
|
Name:='SetFreeBookmarkMenuItem';
|
||||||
|
Caption := uemSetFreeBookmark;
|
||||||
|
OnClick := @BookmarkSetFreeClicked;
|
||||||
end;
|
end;
|
||||||
|
SetBookmarkMenuItem.Add(SetFreeBookmarkMenuItem);
|
||||||
|
end;
|
||||||
|
|
||||||
SrcPopupMenu.Items.Add(Seperator);
|
SrcPopupMenu.Items.Add(Seperator);
|
||||||
|
|
||||||
@ -4377,6 +4400,11 @@ Begin
|
|||||||
BookMarkSet(MenuItem.MenuIndex);
|
BookMarkSet(MenuItem.MenuIndex);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TSourceNotebook.BookmarkSetFreeClicked(Sender: TObject);
|
||||||
|
begin
|
||||||
|
BookMarkSetFree;
|
||||||
|
end;
|
||||||
|
|
||||||
Procedure TSourceNotebook.BookMarkGotoClicked(Sender: TObject);
|
Procedure TSourceNotebook.BookMarkGotoClicked(Sender: TObject);
|
||||||
// popup menu goto bookmark clicked
|
// popup menu goto bookmark clicked
|
||||||
var
|
var
|
||||||
@ -4627,6 +4655,17 @@ Begin
|
|||||||
GotoBookmarkMenuItem[Value].Checked:=true;
|
GotoBookmarkMenuItem[Value].Checked:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TSourceNotebook.BookMarkSetFree;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
for i:=0 to 9 do
|
||||||
|
if (FindBookmark(i)=nil) then begin
|
||||||
|
BookMarkSet(i);
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
{This is called from outside to set a bookmark}
|
{This is called from outside to set a bookmark}
|
||||||
procedure TSourceNotebook.SetBookmark(Value: Integer);
|
procedure TSourceNotebook.SetBookmark(Value: Integer);
|
||||||
Begin
|
Begin
|
||||||
|
Loading…
Reference in New Issue
Block a user