.NET
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

trapping drag and drop

6 REPLIES 6
Reply
Message 1 of 7
chuck.han
684 Views, 6 Replies

trapping drag and drop

Is there a way to trap drag-and-drop INTO an AutoCAD window using the C# API? For example, I want to customize AutoCAD's behavior when I'm dropping in i-drop content from IE.

thanks in advance, Chuck
(Hi Albert!)
6 REPLIES 6
Message 2 of 7
chuck.han
in reply to: chuck.han

Since, Autodesk hasn't wrapped the following globals:

acedRegisterCustomDropTarget(IDropTarget*);
acedRevokeCustomDropTarget();

It looks like a no go. Any suggested hacks would be appreciated...

Chuck
Message 3 of 7
Anonymous
in reply to: chuck.han

These functions should not be used anymore. You should use
acedStartOverrideDropTarget, acedEndOverrideDropTarget instead.
We do wrap these 2 on the .NET API but the manner we do will make it
difficult to use them the way you want them. Look at the
Autodesk.AutoCAD.ApplicationServices.Application.DoDragDrop function. We
only allow you to override the drop target for the duration of DoDragDrop.

Albert

wrote in message news:4863116@discussion.autodesk.com...
Since, Autodesk hasn't wrapped the following globals:

acedRegisterCustomDropTarget(IDropTarget*);
acedRevokeCustomDropTarget();

It looks like a no go. Any suggested hacks would be appreciated...

Chuck
Message 4 of 7
chuck.han
in reply to: chuck.han

How do I initiate a DoDragDrop when the origin of the drag-and-drop is coming from an external app (for example, dragging i-drop content from IE)? Do I need to do something funky with PointFilter/PointMonitor?

thanks, Chuck
Message 5 of 7
Anonymous
in reply to: chuck.han

I don't think it is possible. You will have to fall back to C++ or
(P/Invoke). We probably want to provide an event where you can hook the drop
target even when you didn't initiate the drag. I have this logged as a wish
list item.

albert

wrote in message news:4863716@discussion.autodesk.com...
How do I initiate a DoDragDrop when the origin of the drag-and-drop is
coming from an external app (for example, dragging i-drop content from IE)?
Do I need to do something funky with PointFilter/PointMonitor?

thanks, Chuck
Message 6 of 7
chuck.han
in reply to: chuck.han

I've already pretended to be a C++ programmer again. Thanks. However, perhaps this isn't the forum for this question, but since it is related, I'll go ahead and describe another thing that has come up:

After I load the sample, arxdragdrop, drag-and-drop from external apps into ACAD seems to be broken. When I drag i-drop content in after loading the arx app, I get a menu with the items 'List Files' and 'Cancel' instead of the drag-and-drop sequence (it works fine BEFORE loading the arx app). It seems to be going through the droptarget.cpp code WITHOUT a call to acedStartOverrideDropTarget() that only gets called when initiating a drag-and-drop from the arx-created window.

thanks in advance, Chuck
Message 7 of 7
chuck.han
in reply to: chuck.han

Never mind. I assumed that it was aced{Start,End}OverrideDropTarget()/aced that was dealing with external drag-and-drops, but it is aced{Add,Remove}DropTarget().

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th


Autodesk Design & Make Report

”Boost