From f940c20b06888264394ccaf1e1630e5ee99e30a3 Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Fri, 11 Sep 2009 20:01:58 +0000 Subject: [PATCH] Add the same timer based delay to the db tree filter as for the filter panel in r2627, was also complained about in issue #1350. --- source/main.dfm | 7 +++++++ source/main.pas | 13 ++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/source/main.dfm b/source/main.dfm index b05e45f7..09347d0f 100644 --- a/source/main.dfm +++ b/source/main.dfm @@ -6729,4 +6729,11 @@ object MainForm: TMainForm Left = 40 Top = 269 end + object TimerFilterDBTree: TTimer + Enabled = False + Interval = 500 + OnTimer = TimerFilterDBTreeTimer + Left = 136 + Top = 269 + end end diff --git a/source/main.pas b/source/main.pas index 681872f5..8a65d774 100644 --- a/source/main.pas +++ b/source/main.pas @@ -449,6 +449,7 @@ type actFilterPanel: TAction; actFindInVT1: TMenuItem; TimerFilterVT: TTimer; + TimerFilterDBTree: TTimer; procedure refreshMonitorConfig; procedure loadWindowConfig; procedure saveWindowConfig; @@ -733,6 +734,7 @@ type procedure comboOnlyDBsKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure actFilterPanelExecute(Sender: TObject); procedure TimerFilterVTTimer(Sender: TObject); + procedure TimerFilterDBTreeTimer(Sender: TObject); private ReachedEOT : Boolean; FDelimiter: String; @@ -9573,7 +9575,16 @@ end; procedure TMainForm.comboOnlyDBsChange(Sender: TObject); begin - // Immediately apply database filter + // Reset editing timer + TimerFilterDBTree.Enabled := False; + TimerFilterDBTree.Enabled := True; +end; + + +procedure TMainForm.TimerFilterDBTreeTimer(Sender: TObject); +begin + // Apply database filter as the user has finished typing + TimerFilterDBTree.Enabled := False; RefreshTree(False); end;