anchor.diff:    private
       FDropManager: TfpgOLEDropTarget;
       FDropPos: TPoint;
  +    FUserMimeSelection: TfpgString;
  +    FUserAcceptDrag: Boolean;
       function    GetDropManager: TfpgOLEDropTarget;
       procedure   HandleDNDLeave(Sender: TObject);
       procedure   HandleDNDEnter(Sender: TObject; DataObj: IDataObject; KeyState: Longint; PT: TPoint; var Effect: DWORD);
  
positive.code: 
  end;
  
  constructor TGDIDragManager.Create(ADropTarget: TObject);
  begin
    inherited Create;
    FDropTarget := ADropTarget;
  
negative.code: var
    wg: TfpgWidget;
  begin
    FUserMimeSelection := '';
    wg := self as TfpgWidget;
    if wg.AcceptDrops then  { if we get here, this should always be true anyway }
    begin
  