Drag & Drop

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 13/11/2010 at 00:52, xxxxxxxx wrote:

User Information:
Cinema 4D Version:    
Platform:   Windows  ;   
Language(s) :   C.O.F.F.E.E  ;

---------
I am able to do a drag&drop into my dialog, however I cannot detect that the mouse was released over my field.
The BFM_DRAG_FINISHED or the BFM_DRAG_LOST doesn't seem to be correct.

What is the best way of doing this?
I am using Cinema 4D 11.5

oDialog::Message(msg)
{
  if (msg->GetId() == BFM_DRAGRECEIVE)
  {
      println ("Drag message ontvangen.");
      if (CheckDropArea(DRAGDROP, msg, TRUE, TRUE))
      {
          var string;
          var obj=GetDragObject(msg);
          if (instanceof(obj,BaseObject))
          {
              string=obj->GetName();
              SetString (DRAGDROP, string);
              println ("The mouse is in DRAGDROP and dropped.", string);
              // The mouse is in drop area.
          }
          else println ("Wrong type was dragged.");
         
          //if (msg->GetData(BFM_DRAG_FINISHED)) println ("Finished."); // does not work???
      } // end mouse is in drop area.

if (msg->GetData(BFM_DRAG_LOST))  // never seem to get here???
      {
          println ("lost...........");
          // We are no longer the target of the drag operation.
          // Remove or reset any help text/lines.
      }
  } // end if (msg->GetId() == BFM_DRAGRECEIVE)
 
  return super::Message(msg);
 
} // end Message