mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-14 23:59:27 +02:00
IDE: configure external tools: fixed saving shortcuts
git-svn-id: trunk@46428 -
This commit is contained in:
parent
b55a4754f9
commit
6a49b9864d
@ -3049,7 +3049,7 @@ var
|
|||||||
i: integer;
|
i: integer;
|
||||||
ExtToolCat: TIDECommandCategory;
|
ExtToolCat: TIDECommandCategory;
|
||||||
ExtToolRelation: TKeyCommandRelation;
|
ExtToolRelation: TKeyCommandRelation;
|
||||||
ToolName: string;
|
ToolLocalizedName: string;
|
||||||
cmd: word;
|
cmd: word;
|
||||||
CmdRel: TKeyCommandRelation;
|
CmdRel: TKeyCommandRelation;
|
||||||
begin
|
begin
|
||||||
@ -3058,11 +3058,11 @@ begin
|
|||||||
if NewCount>fExtToolCount then begin
|
if NewCount>fExtToolCount then begin
|
||||||
// increase available external tool commands
|
// increase available external tool commands
|
||||||
while NewCount>fExtToolCount do begin
|
while NewCount>fExtToolCount do begin
|
||||||
ToolName:=Format(srkmecExtTool,[fExtToolCount]);
|
ToolLocalizedName:=Format(srkmecExtTool,[fExtToolCount]);
|
||||||
cmd:=ecExtToolFirst+fExtToolCount;
|
cmd:=ecExtToolFirst+fExtToolCount;
|
||||||
CmdRel:=TKeyCommandRelation.Create(ExtToolCat,
|
CmdRel:=TKeyCommandRelation.Create(ExtToolCat,
|
||||||
Format('External tool %d',[fExtToolCount]), // keep name untranslated
|
Format('External tool %d',[fExtToolCount]), // keep name untranslated
|
||||||
ToolName, cmd);
|
ToolLocalizedName, cmd);
|
||||||
FRelations.Add(CmdRel);
|
FRelations.Add(CmdRel);
|
||||||
inc(fExtToolCount);
|
inc(fExtToolCount);
|
||||||
end;
|
end;
|
||||||
|
31
ide/main.pp
31
ide/main.pp
@ -4395,6 +4395,7 @@ begin
|
|||||||
SaveEnvironment(true);
|
SaveEnvironment(true);
|
||||||
// save shortcuts to editor options
|
// save shortcuts to editor options
|
||||||
ExternalUserTools.SaveShortCuts(EditorOpts.KeyMap);
|
ExternalUserTools.SaveShortCuts(EditorOpts.KeyMap);
|
||||||
|
EditorOpts.Save;
|
||||||
UpdateExternalUserToolsInMenu;
|
UpdateExternalUserToolsInMenu;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -7576,12 +7577,15 @@ end;
|
|||||||
procedure TMainIDE.UpdateExternalUserToolsInMenu;
|
procedure TMainIDE.UpdateExternalUserToolsInMenu;
|
||||||
var
|
var
|
||||||
ToolCount: integer;
|
ToolCount: integer;
|
||||||
|
Section: TIDEMenuSection;
|
||||||
procedure CreateToolMenuItems;
|
CurMenuItem: TIDEMenuItem;
|
||||||
var
|
i: Integer;
|
||||||
Section: TIDEMenuSection;
|
ExtTool: TExternalUserTool;
|
||||||
begin
|
begin
|
||||||
Section:=itmCustomTools;
|
ToolCount:=ExternalUserTools.Count;
|
||||||
|
Section:=itmCustomTools;
|
||||||
|
Section.BeginUpdate;
|
||||||
|
try
|
||||||
// add enough menuitems
|
// add enough menuitems
|
||||||
while Section.Count-1<ToolCount do
|
while Section.Count-1<ToolCount do
|
||||||
RegisterIDEMenuCommand(Section.GetPath,
|
RegisterIDEMenuCommand(Section.GetPath,
|
||||||
@ -7589,14 +7593,8 @@ var
|
|||||||
// delete unneeded menuitems
|
// delete unneeded menuitems
|
||||||
while Section.Count-1>ToolCount do
|
while Section.Count-1>ToolCount do
|
||||||
Section[Section.Count-1].Free;
|
Section[Section.Count-1].Free;
|
||||||
end;
|
|
||||||
|
|
||||||
procedure SetToolMenuItems;
|
// set caption and command
|
||||||
var
|
|
||||||
CurMenuItem: TIDEMenuItem;
|
|
||||||
i: Integer;
|
|
||||||
ExtTool: TExternalUserTool;
|
|
||||||
begin
|
|
||||||
for i:=0 to ToolCount-1 do begin
|
for i:=0 to ToolCount-1 do begin
|
||||||
CurMenuItem:=itmCustomTools[i+1]; // Note: the first menu item is the "Configure"
|
CurMenuItem:=itmCustomTools[i+1]; // Note: the first menu item is the "Configure"
|
||||||
ExtTool:=ExternalUserTools[i];
|
ExtTool:=ExternalUserTools[i];
|
||||||
@ -7606,12 +7604,9 @@ var
|
|||||||
EditorOpts.KeyMap.FindIDECommand(ecExtToolFirst+i);
|
EditorOpts.KeyMap.FindIDECommand(ecExtToolFirst+i);
|
||||||
CurMenuItem.OnClick:=@mnuExternalUserToolClick;
|
CurMenuItem.OnClick:=@mnuExternalUserToolClick;
|
||||||
end;
|
end;
|
||||||
|
finally
|
||||||
|
Section.EndUpdate;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
begin
|
|
||||||
ToolCount:=ExternalUserTools.Count;
|
|
||||||
CreateToolMenuItems;
|
|
||||||
SetToolMenuItems;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TMainIDE.PrepareForCompile: TModalResult;
|
function TMainIDE.PrepareForCompile: TModalResult;
|
||||||
|
Loading…
Reference in New Issue
Block a user