Hey Everybody,
I'm trying to take control of the Drag/Drop behavior when dragging a IVsSimpleObjectList2 item from the Class View to the Main editor window.
Currently, when an object list item is dragged onto the main editor and then dropped, the name of the node is automatically inserted on the main window at the position of the caret. I'd like to be able to have control over what is inserted.
I've tried looking at IVsSimpleObjectList2.QueryDragDrop (called when initiating a drag/drop operation), but I can't seem to find any docs about how to modify the IDataObject that is passed to that method (or if that's even possible).
I've also tried IMouseProcessorProvider and IDropHandlerProvider MEF Component extensions to the editor. With the IMouseProcessorProvider I can intercept the drop (but not modify the data without an exception). The IDropHandlerProvider.GetAssociatedDropHandler() method gets called when I drag anything to the editor window, but the IDropHandler methods in the provided DropHandler object never get called for any reason (is this a bug?).
I've beat my head over this issue for a couple weeks now and haven't been able to make any headway on the feature I'm trying to implement.
Any help or advice on this issue would be greatly appreciated!
-Mike