anchor.diff:      FAutoPageSize: boolean;
       FCanPage: boolean;
       FCanSearch: boolean;
  +    FSelectionType: TSelectionType;
       function GetCanvas: TCanvas;
       procedure SetAutoPageSize(AValue: boolean);
       procedure SetCanPage(AValue: boolean);
  
positive.code: 
  
  type
    TSortDirection = (sdNone, sdAscending, sdDescending);
    TVisualGridFilter = (vgfMatchTextExact, vgfMatchTextBeginning, vgfMatchTextEnd,
      vgfMatchTextAnywhere, vgfNumericEQ, vgfNumericLT, vgfNumericLTE, vgfNumericGT,
  
negative.code:   RefreshPageIndexData(false);
  end;
  
  procedure TCustomVisualGrid.SetSelectionType(AValue: TSelectionType);
  begin
    if FSelectionType=AValue then
      Exit;
  
    FSelectionType:=AValue;
    case FSelectionType of
      stNone: FDrawGrid.Options:=FDefaultDrawGridOptions;
      stCell: FDrawGrid.Options:=FDefaultDrawGridOptions+[goDrawFocusSelected];
      stRow: FDrawGrid.Options:=FDefaultDrawGridOptions+[goRowSelect];
      stMultiRow: FDrawGrid.Options:=FDefaultDrawGridOptions+[goRowSelect,goRangeSelect];
    end;
  end;
  
  procedure TCustomVisualGrid.StandardDrawCell(Sender: TObject; ACol,
    ARow: Longint; Rect: TRect; State: TGridDrawState);
  var
  