anchor.diff:  
   procedure TATStatus.Paint;
   begin
  -  if Assigned(FBitmap) then
  -  begin
  -    DoPaintTo(FBitmap.Canvas);
  -    Canvas.CopyRect(ClientRect, FBitmap.Canvas, ClientRect);
  -  end;
  +  if DoubleBuffered then
  +  begin
  +    if Assigned(FBitmap) then
  +    begin
  +      DoPaintTo(FBitmap.Canvas);
  +      Canvas.CopyRect(ClientRect, FBitmap.Canvas, ClientRect);
  +    end;
  +  end
  +  else
  +    DoPaintTo(Canvas);
   end;
   
   procedure TATStatus.DoPaintPanelTo(C: TCanvas; ARect: TRect;
  
positive.code:     ACanvas: TCanvas; const ARect: TRect; var ACanDraw: boolean) of object;
  
  type
  
    { TATStatus }
  
    TATStatus = class(TPanel)
  
negative.code: uses
    SysUtils, Forms, Math;
  
  function IsDoubleBufferedNeeded: boolean;
  begin
    {$ifdef windows}
    exit(true);
    {$endif}
    {$ifdef darwin}
    exit(false);
    {$endif}
    {$ifdef linux}
    exit(false);
    {$endif}
  end;
  
  { TATStatus }
  
  function TATStatus.IsIndexOk(AIndex: Integer): boolean;
  