mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2026-03-13 09:24:25 +08:00
Clean registry from unwanted WHERE clauses if "Remember WHERE filters" was unchecked. Avoids confusion with unwanted filters when that option was switched OFF and then ON again.
This commit is contained in:
@@ -136,6 +136,8 @@ procedure Toptionsform.Apply(Sender: TObject);
|
||||
var
|
||||
cwin : TMDIChild;
|
||||
reg : TRegistry;
|
||||
ServerKeys, ValueNames: TStringList;
|
||||
i, j: Integer;
|
||||
begin
|
||||
Screen.Cursor := crHourGlass;
|
||||
|
||||
@@ -172,6 +174,24 @@ begin
|
||||
reg.WriteInteger(REGNAME_UPDATECHECK_INTERVAL, updownUpdatecheckInterval.Position);
|
||||
reg.WriteBool(REGNAME_PREFER_SHOWTABLES, chkPreferShowTables.Checked);
|
||||
|
||||
// Clean registry from unwanted WHERE clauses if "Remember WHERE filters" was unchecked
|
||||
if not chkRememberFilters.Checked then begin
|
||||
reg.OpenKey(REGKEY_SESSIONS, True);
|
||||
ServerKeys := TStringList.Create;
|
||||
reg.GetKeyNames(ServerKeys);
|
||||
for i := 0 to ServerKeys.Count - 1 do begin
|
||||
reg.OpenKey(REGPATH + REGKEY_SESSIONS + ServerKeys[i], True);
|
||||
ValueNames := TStringList.Create;
|
||||
reg.GetValueNames(ValueNames);
|
||||
for j := 0 to ValueNames.Count - 1 do begin
|
||||
if Pos(REGPREFIX_WHERECLAUSE, ValueNames[j]) = 1 then
|
||||
reg.DeleteValue(ValueNames[j]);
|
||||
end;
|
||||
ValueNames.Free;
|
||||
end;
|
||||
ServerKeys.Free;
|
||||
end;
|
||||
|
||||
// Close registry key
|
||||
reg.CloseKey;
|
||||
reg.Free;
|
||||
|
||||
Reference in New Issue
Block a user