mirror of https://gitlab.com/basile.b/dexed.git
fix, prevent corrupted history to slow down the app on start/exit
This commit is contained in:
parent
efebfaca6b
commit
2202283ec4
|
@ -286,6 +286,7 @@ type
|
|||
procedure setIgnoredSignals(value: TStringList);
|
||||
procedure setCommandsHistory(value: TStringList);
|
||||
procedure setShortcuts(value: TCEDebugShortcuts);
|
||||
procedure cleanInvalidHistoryEntries;
|
||||
published
|
||||
property asmSyntax: TAsmSyntax read fAsmSyntax write fAsmSyntax;
|
||||
property autoDisassemble: boolean read fAutoDisassemble write fAutoDisassemble;
|
||||
|
@ -302,6 +303,9 @@ type
|
|||
property showRawMiOutput: boolean read fShowRawMiOutput write fShowRawMiOutput;
|
||||
property showOutput: boolean read fShowOutput write fShowOutput;
|
||||
property stopAllThreadsOnBreak: boolean read fStopAllThreadsOnBreak write fStopAllThreadsOnBreak;
|
||||
protected
|
||||
procedure beforeSave; override;
|
||||
procedure afterLoad; override;
|
||||
public
|
||||
constructor create(aOwner: TComponent); override;
|
||||
destructor destroy; override;
|
||||
|
@ -637,6 +641,25 @@ begin
|
|||
inherited;
|
||||
end;
|
||||
|
||||
procedure TCEDebugOptionsBase.cleanInvalidHistoryEntries;
|
||||
var
|
||||
i: integer;
|
||||
begin
|
||||
for i := fCommandsHistory.Count-1 downto 0 do
|
||||
if fCommandsHistory[i].length > 128 then
|
||||
fCommandsHistory.Delete(i);
|
||||
end;
|
||||
|
||||
procedure TCEDebugOptionsBase.beforeSave;
|
||||
begin
|
||||
cleanInvalidHistoryEntries;
|
||||
end;
|
||||
|
||||
procedure TCEDebugOptionsBase.afterLoad;
|
||||
begin
|
||||
cleanInvalidHistoryEntries;
|
||||
end;
|
||||
|
||||
procedure TCEDebugOptionsBase.setIgnoredSignals(value: TStringList);
|
||||
begin
|
||||
fIgnoredSignals.Assign(value);
|
||||
|
|
|
@ -23,8 +23,12 @@ type
|
|||
fWholeWord: boolean;
|
||||
fMrSearches: TStringList;
|
||||
fMrReplacements: TStringList;
|
||||
procedure cleanIvnalidHistoryItems;
|
||||
procedure setMrSearches(value: TStringList);
|
||||
procedure setMrReplacements(value: TStringList);
|
||||
protected
|
||||
procedure afterLoad; override;
|
||||
procedure beforeSave; override;
|
||||
published
|
||||
property prompt: boolean read fPrompt write fPrompt;
|
||||
property fromCursor: boolean read fFromCur write fFromCur;
|
||||
|
@ -35,7 +39,6 @@ type
|
|||
property recentSearches: TStringList read fMrSearches write setMrSearches;
|
||||
property recentReplacements: TStringList read fMrReplacements write setMrReplacements;
|
||||
public
|
||||
procedure afterLoad; override;
|
||||
constructor create(aOwner: TComponent); override;
|
||||
destructor destroy; override;
|
||||
procedure assign(source: TPersistent); override;
|
||||
|
@ -175,16 +178,10 @@ begin
|
|||
fMrSearches.Assign(value);
|
||||
end;
|
||||
|
||||
procedure TCESearchOptions.setMrReplacements(value: TStringList);
|
||||
begin
|
||||
fMrReplacements.Assign(value);
|
||||
end;
|
||||
|
||||
procedure TCESearchOptions.afterLoad;
|
||||
procedure TCESearchOptions.cleanIvnalidHistoryItems;
|
||||
var
|
||||
i: integer;
|
||||
begin
|
||||
inherited;
|
||||
for i := fMrReplacements.Count-1 downto 0 do
|
||||
if fMrReplacements[i].length > 128 then
|
||||
fMrReplacements.Delete(i);
|
||||
|
@ -192,6 +189,21 @@ begin
|
|||
if fMrSearches[i].length > 128 then
|
||||
fMrSearches.Delete(i);
|
||||
end;
|
||||
|
||||
procedure TCESearchOptions.setMrReplacements(value: TStringList);
|
||||
begin
|
||||
fMrReplacements.Assign(value);
|
||||
end;
|
||||
|
||||
procedure TCESearchOptions.afterLoad;
|
||||
begin
|
||||
cleanIvnalidHistoryItems;
|
||||
end;
|
||||
|
||||
procedure TCESearchOptions.beforeSave;
|
||||
begin
|
||||
cleanIvnalidHistoryItems;
|
||||
end;
|
||||
{$ENDREGION}
|
||||
|
||||
{$REGION Standard Comp/Obj------------------------------------------------------}
|
||||
|
|
Loading…
Reference in New Issue