mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-17 16:19:28 +02:00
IDE: fixed catching excepions on load/save editor macros
git-svn-id: trunk@45876 -
This commit is contained in:
parent
08732d323f
commit
b3adaef7a3
@ -5,12 +5,15 @@ unit EditorMacroListViewer;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, FileUtil, Laz2_XMLCfg, LazUTF8, SynMacroRecorder, SynEdit,
|
Classes, SysUtils,
|
||||||
SynEditKeyCmds, FileProcs, Forms, Controls, Dialogs, StdCtrls, ButtonPanel,
|
FileUtil, Laz2_XMLCfg, LazUTF8, LazLoggerBase,
|
||||||
ComCtrls, ExtCtrls, Spin, Menus, LCLType, IDEWindowIntf, IDEImagesIntf,
|
LCLType, Forms, Controls, Dialogs, StdCtrls, ButtonPanel, ComCtrls, ExtCtrls,
|
||||||
|
Spin, Menus,
|
||||||
|
SynMacroRecorder, SynEdit, SynEditKeyCmds,
|
||||||
|
IDEWindowIntf, IDEImagesIntf, SrcEditorIntf, IDEHelpIntf, IDECommands,
|
||||||
|
LazIDEIntf,
|
||||||
LazarusIDEStrConsts, ProjectDefs, LazConf, Project, KeyMapping,
|
LazarusIDEStrConsts, ProjectDefs, LazConf, Project, KeyMapping,
|
||||||
KeyMapShortCutDlg, MainIntf, SrcEditorIntf, IDEHelpIntf, IDECommands,
|
KeyMapShortCutDlg, MainIntf, IDEDialogs;
|
||||||
LazIDEIntf, IDEDialogs;
|
|
||||||
|
|
||||||
type
|
type
|
||||||
TSynEditorMacro = class(TSynMacroRecorder) end;
|
TSynEditorMacro = class(TSynMacroRecorder) end;
|
||||||
@ -353,14 +356,20 @@ var
|
|||||||
XMLConfig: TXMLConfig;
|
XMLConfig: TXMLConfig;
|
||||||
begin
|
begin
|
||||||
MacroListViewer.FIgnoreMacroChanges := True;
|
MacroListViewer.FIgnoreMacroChanges := True;
|
||||||
|
Filename := TrimFilename(AppendPathDelim(GetPrimaryConfigPath)+GlobalConfFileName);
|
||||||
try
|
try
|
||||||
Filename := TrimFilename(AppendPathDelim(GetPrimaryConfigPath)+GlobalConfFileName);
|
|
||||||
XMLConfig := TXMLConfig.Create(Filename);
|
XMLConfig := TXMLConfig.Create(Filename);
|
||||||
EditorMacroListGlob.ReadFromXmlConf(XMLConfig, '');
|
try
|
||||||
XMLConfig.Free;
|
EditorMacroListGlob.ReadFromXmlConf(XMLConfig, '');
|
||||||
finally
|
finally
|
||||||
MacroListViewer.FIgnoreMacroChanges := False;
|
XMLConfig.Free;
|
||||||
|
end;
|
||||||
|
except
|
||||||
|
on E: Exception do begin
|
||||||
|
DebugLn('[EditorMacroListViewer.LoadGlobalInfo] error reading "',Filename,'": ',E.Message);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
MacroListViewer.FIgnoreMacroChanges := False;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure SaveGlobalInfo;
|
procedure SaveGlobalInfo;
|
||||||
@ -369,9 +378,18 @@ var
|
|||||||
XMLConfig: TXMLConfig;
|
XMLConfig: TXMLConfig;
|
||||||
begin
|
begin
|
||||||
Filename := TrimFilename(AppendPathDelim(GetPrimaryConfigPath)+GlobalConfFileName);
|
Filename := TrimFilename(AppendPathDelim(GetPrimaryConfigPath)+GlobalConfFileName);
|
||||||
XMLConfig := TXMLConfig.CreateClean(Filename);
|
try
|
||||||
EditorMacroListGlob.WriteToXmlConf(XMLConfig, '');
|
XMLConfig := TXMLConfig.CreateClean(Filename);
|
||||||
XMLConfig.Free;
|
try
|
||||||
|
EditorMacroListGlob.WriteToXmlConf(XMLConfig, '');
|
||||||
|
finally
|
||||||
|
XMLConfig.Free;
|
||||||
|
end;
|
||||||
|
except
|
||||||
|
on E: Exception do begin
|
||||||
|
DebugLn('[EditorMacroListViewer.SaveGlobalInfo] error writing "',Filename,'": ',E.Message);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TIdeEditorMacroKeyBinding }
|
{ TIdeEditorMacroKeyBinding }
|
||||||
|
Loading…
Reference in New Issue
Block a user