anchor.diff:    FInSearch := value;
   end; { TDLUIXVCLTreeStorage.SetInSearch }
   
  +procedure TDLUIXVCLTreeStorage.SetLastSearch(const value: string);
  +begin
  +  FLastSearch := value;
  +end; { TDLUIXVCLTreeStorage.SetLastSearch }
  +
   end.
  
positive.code:     function  GetAbortSearch: boolean;
      function  GetCoordinates: ICoordinates;
      function  GetInSearch: boolean;
      function  GetSearchBox: TSearchBox;
      function  GetSearchTimer: TTimer;
      function  GetVirtualTree: TVirtualStringTree;
      procedure SetAbortSearch(const value: boolean);
      procedure SetCoordinates(const value: ICoordinates);
      procedure SetInSearch(const value: boolean);
    //
      property AbortSearch: boolean read GetAbortSearch write SetAbortSearch;
      property Coordinates: ICoordinates read GetCoordinates write SetCoordinates;
      property InSearch: boolean read GetInSearch write SetInSearch;
      property SearchBox: TSearchBox read GetSearchBox;
      property SearchTimer: TTimer read GetSearchTimer;
      property VirtualTree: TVirtualStringTree read GetVirtualTree;
  
negative.code:     timer := nil;
      if assigned(listBoxData) then
        timer := listBoxData.SearchTimer;
      if assigned(treeData) and (treeData.LastSearch <> Trim((Sender as TSearchBox).Text)) then
        timer := treeData.SearchTimer;
      if assigned(timer) then begin
        timer.Enabled := false;
  