mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-16 20:11:48 +08:00
Override VirtualTree's incremental search event, make it case insensitive, and apply that event in FixVT to various lists and grids, which have IncrementalSearch enabled. Fixes issue #1605.
This commit is contained in:
@ -613,6 +613,8 @@ type
|
||||
PVirtualNode; Column: TColumnIndex; var Result: Integer);
|
||||
procedure vstHeaderDraggedOut(Sender: TVTHeader; Column: TColumnIndex;
|
||||
DropPosition: TPoint);
|
||||
procedure vstIncrementalSearch(Sender: TBaseVirtualTree; Node: PVirtualNode; const SearchText: String;
|
||||
var Result: Integer);
|
||||
procedure DBtreeFocusChanged(Sender: TBaseVirtualTree; Node: PVirtualNode;
|
||||
Column: TColumnIndex);
|
||||
procedure DBtreeDblClick(Sender: TObject);
|
||||
@ -5648,6 +5650,21 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure TMainForm.vstIncrementalSearch(Sender: TBaseVirtualTree; Node: PVirtualNode;
|
||||
const SearchText: String; var Result: Integer);
|
||||
var
|
||||
CellText: String;
|
||||
VT: TVirtualStringTree;
|
||||
begin
|
||||
// Override VT's default incremental search behaviour. Make it case insensitive.
|
||||
VT := Sender as TVirtualStringTree;
|
||||
if VT.FocusedColumn = NoColumn then
|
||||
Exit;
|
||||
CellText := VT.Text[Node, VT.FocusedColumn];
|
||||
Result := StrLIComp(PChar(CellText), PChar(SearchText), Length(SearchText));
|
||||
end;
|
||||
|
||||
|
||||
{**
|
||||
A cell in ListCommandStats gets painted.
|
||||
Draw a progress bar on it to visualize its percentage value.
|
||||
|
Reference in New Issue
Block a user