anchor.diff:  begin
     rect := FPaintStruct.rcPaint;
   
  +  { It is necessary to create a bitmap and select it to implement
  +    double buffering. If we just create a DC and don't select a bitmap,
  +    there is no memory where to store the painting }
  +  
     hdcMem := CreateCompatibleDC(FPaintStruct.hdc);
   
     NewBitmap := Windows.CreateCompatibleBitmap(FPaintStruct.hdc, Width, Height);
  
positive.code: begin
    FHandle := AHandle;
  
  //  ASSERT(Handle <> 0);
  
    Windows.SelectObject(Handle, FDefaultFontHandle);
    Windows.GetTextMetrics(Handle, @FFontMetrics);
  
negative.code:    rect.Left,              // x-coordinate of source upper-left corner
     rect.Top,               // y-coordinate of source upper-left corner
     SRCCOPY                 // raster operation code
    );
  
  {  Windows.BitBlt(
     FPaintStruct.hdc, // handle to destination DC
     0,                // x-coord of destination upper-left corner
     0,                // y-coord of destination upper-left corner
  