anchor.diff:    FSortColumn := LColumn;
   end;
   
  +function TCustomVisualGrid.CalculateCellContentRect(const ARect : TRect) : TRect;
  +const
  +{$IFDEF Windows}
  +  PLATFORM_CELL_RECT_X_OFFSET = 2;
  +  PLATFORM_CELL_RECT_Y_OFFSET = 2;
  +{$ELSE}
  +  {$IFDEF DARWIN}
  +  PLATFORM_CELL_RECT_X_OFFSET = 2;
  +  PLATFORM_CELL_RECT_Y_OFFSET = 2;
  +  {$ELSE} // Linux
  +  PLATFORM_CELL_RECT_X_OFFSET = 2;
  +  PLATFORM_CELL_RECT_Y_OFFSET = 2;
  +  {$ENDIF}
  +{$ENDIF}
  +begin
  +  Result.Left := ClipValue(ARect.Left + FCellPadding.Left + PLATFORM_CELL_RECT_X_OFFSET, 2, 10000);
  +  Result.Top := ClipValue(ARect.Top + FCellPadding.Top + PLATFORM_CELL_RECT_Y_OFFSET, 2, 100000);
  +  Result.Right := ClipValue(ARect.Right - FCellPadding.Right - PLATFORM_CELL_RECT_X_OFFSET, 2, 1000000);
  +  Result.Bottom := ClipValue(ARect.Bottom - FCellPadding.Bottom - PLATFORM_CELL_RECT_Y_OFFSET, 2, 100000);
  +end;
  +
   initialization
     {$I *.inc}
   
  
positive.code:     property SearchMode : TSearchMode read FSearchMode write SetSearchMode;
  
      property Caption: TVisualGridCaption read FCaption write FCaption;
      property ColCount: Integer read GetColCount;
      property Columns[Index: Integer]: TVisualColumn read GetColumns;
      property Cells[ACol, ARow: Integer]: Variant read GetCells write SetCells;
  
negative.code:   sDataLoading = 'DATA LOADING';
    sExpression = 'Expression';
    sImproperColumnIndex = 'Improper column index. Max expected is %d but %d found.';
  
  const
    CT_DEFAULT_CELL_PADDING_LEFT = 0;
    CT_DEFAULT_CELL_PADDING_TOP = 0;
    CT_DEFAULT_CELL_PADDING_RIGHT = 4;
    CT_DEFAULT_CELL_PADDING_BOTTOM = 0;
  
  type
    TDrawGridAccess = class(TDrawGrid);
  