anchor.diff:  
     FCanvas.SetHandle(hdcMem);
   
  +  { Execution of user paint code }
  +
     if Assigned(OnPaint) then OnPaint(Self);
   
  -{  Windows.BitBlt(
  +  { Flushes the result to the screen }
  +  
  +  Windows.BitBlt(
      FPaintStruct.hdc,       // handle to destination DC
      rect.Left,              // x-coord of destination upper-left corner
      rect.Top,               // y-coord of destination upper-left corner
  
positive.code: begin
    rect := FPaintStruct.rcPaint;
  
    hdcMem := CreateCompatibleDC(FPaintStruct.hdc);
  
    NewBitmap := Windows.CreateCompatibleBitmap(FPaintStruct.hdc, Width, Height);
  
negative.code:    0,                // x-coordinate of source upper-left corner
     0,                // y-coordinate of source upper-left corner
     SRCCOPY           // raster operation code
    );    }
  
    { Clean up }
  
    SelectObject(hdcMem, OldBitmap);
    DeleteDC(hdcMem);
    DeleteObject(NewBitmap);
  
    FCanvas.SetHandle(0);
  end;
  
  procedure TGDIWindow.EvMove;
  