anchor.diff:    inherited Destroy;
   end;
   
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getBorderBottom: Integer;
  +begin
  +  Result := FBrd.Bottom;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getBorderLeft: Integer;
  +begin
  +  Result := FBrd.Left;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getBorderRight: Integer;
  +begin
  +  Result := FBrd.Right;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getBorderTop: Integer;
  +begin
  +  Result := FBrd.Top;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getPaddingBottom: Integer;
  +begin
  +  Result := FPad.Bottom;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getPaddingLeft: Integer;
  +begin
  +  Result := FPad.Left;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getPaddingRight: Integer;
  +begin
  +  Result := FPad.Right;
  +end;
  +
  +//-- BG ---------------------------------------------------------- 08.01.2012 --
  +function TCellObj.getPaddingTop: Integer;
  +begin
  +  Result := FPad.Top;
  +end;
  +
   {----------------TCellObj.InitializeCell}
   
   procedure TCellObj.Initialize(TablePadding: Integer; const BkImageName: ThtString;
     const APRec: PtPositionRec; Border: boolean);
   begin
  -  if PadTop < 0 then
  -    PadTop := TablePadding;
  -  if PadRight < 0 then
  -    PadRight := TablePadding;
  -  if PadBottom < 0 then
  -    PadBottom := TablePadding;
  -  if PadLeft < 0 then
  -    PadLeft := TablePadding;
  +  if FPad.Top < 0 then
  +    FPad.Top := TablePadding;
  +  if FPad.Right < 0 then
  +    FPad.Right := TablePadding;
  +  if FPad.Bottom < 0 then
  +    FPad.Bottom := TablePadding;
  +  if FPad.Left < 0 then
  +    FPad.Left := TablePadding;
     if Border and (BorderStyle = bssNone) then
     begin
  -    BrdLeft := Max(1, BrdLeft);
  -    BrdRight := Max(1, BrdRight);
  -    BrdTop := Max(1, BrdTop);
  -    BrdBottom := Max(1, BrdBottom);
  -  end;
  -  HzSpace := PadLeft + BrdLeft + BrdRight + PadRight;
  -  VrSpace := PadTop + BrdTop + BrdBottom + PadBottom;
  +    FBrd.Left := Max(1, FBrd.Left);
  +    FBrd.Right := Max(1, FBrd.Right);
  +    FBrd.Top := Max(1, FBrd.Top);
  +    FBrd.Bottom := Max(1, FBrd.Bottom);
  +  end;
  +  HzSpace := FPad.Left + FBrd.Left + FBrd.Right + FPad.Right;
  +  VrSpace := FPad.Top + FBrd.Top + FBrd.Bottom + FPad.Bottom;
   
     if (BkImageName <> '') and not Assigned(BGImage) then
     begin
  
positive.code: 
    BL := X + CellSpacing; {Border left and right}
    BR := X + Wd;
    PL := BL + BrdLeft; {Padding left and right}
    PR := BR - BrdRight;
  
    BT := YO + CellSpacing; {Border Top and Bottom}
    BB := YO + Ht;
    PT := BT + BrdTop; {Padding Top and Bottom}
    PB := BB - BrdBottom;
  
    IT := Max(0, Arect.Top - 2 - PT);
    FT := Max(PT, ARect.Top - 2); {top of area drawn, screen coordinates}
  
negative.code:     procedure Initialize(TablePadding: Integer; const BkImageName: ThtString; const APRec: PtPositionRec; Border: Boolean);
      procedure Draw(Canvas: TCanvas; const ARect: TRect; X, Y, CellSpacing: Integer; Border: Boolean; Light, Dark: TColor);
      procedure DrawLogic2(Canvas: TCanvas; Y, CellSpacing: Integer; var Curs: Integer);
  
      // BG, 08.01.2012: issue 109: BCB cannot handle properties that refer to record members.
      // - added for legacy support only, will be removed in a near future release.
      //   Please use properties Border and Padding instead.
      function getBorderBottom: Integer;
      function getBorderLeft: Integer;
      function getBorderRight: Integer;
      function getBorderTop: Integer;
      function getPaddingBottom: Integer;
      function getPaddingLeft: Integer;
      function getPaddingRight: Integer;
      function getPaddingTop: Integer;
      procedure setBorderBottom(const Value: Integer);
      procedure setBorderLeft(const Value: Integer);
      procedure setBorderRight(const Value: Integer);
      procedure setBorderTop(const Value: Integer);
      procedure setPaddingBottom(const Value: Integer);
      procedure setPaddingLeft(const Value: Integer);
      procedure setPaddingRight(const Value: Integer);
      procedure setPaddingTop(const Value: Integer);
    public
  
      NeedDoImageStuff: boolean;
  