anchor.diff:  
       property CanPage: boolean read FCanPage write SetCanPage default true;
       property CanSearch: boolean read FCanSearch write SetCanSearch default true;
  +    property MultiSearchToggleBox: boolean read GetMultiSearchToggleBox write SetMultiSearchToggleBox;
  +    property MultiSearch: boolean read GetMultiSearch write SetMultiSearch;
       property Canvas: TCanvas read GetCanvas;
       property SelectionType: TSelectionType read FSelectionType write SetSelectionType;
   
  
positive.code:     FCanSearch: boolean;
      FSelectionType: TSelectionType;
      function GetCanvas: TCanvas;
      procedure SetShowAllData(AValue: boolean);
      procedure SetAutoPageSize(AValue: boolean);
      procedure SetCanPage(AValue: boolean);
  
negative.code:   Result := FDrawGrid.Canvas;
  end;
  
  function TCustomVisualGrid.GetMultiSearch: boolean;
  begin
    Result := FMultiSearchToggleBox.State=cbChecked;
  end;
  
  function TCustomVisualGrid.GetMultiSearchToggleBox: boolean;
  begin
    Result := FMultiSearchToggleBox.Visible;
  end;
  
  procedure TCustomVisualGrid.SetMultiSearchToggleBox(AValue: boolean);
  begin
    if FMultiSearchToggleBox.Visible=AValue then
      Exit;
    FMultiSearchToggleBox.Visible:=AValue;
  end;
  
  procedure TCustomVisualGrid.SetMultiSearch(AValue: boolean);
  begin
    if (AValue and (FMultiSearchToggleBox.State=cbChecked)) or
       (not AValue and (FMultiSearchToggleBox.State=cbUnchecked)) then
      Exit;
  
    if AValue then
      FMultiSearchToggleBox.State:=cbChecked
    else
      FMultiSearchToggleBox.State:=cbUnchecked;
  
    MultiSearchToggleBoxChange(Self);
  end;
  
  procedure TCustomVisualGrid.SetShowAllData(AValue: boolean);
  begin
    if FShowAllData=AValue then
  