What you require is somewhat against traditional approach to drag and drop. What happens if you start a drag (hence remove the item) and then cancel the drag without dropping the item on the widget or if you drop the item on some external application? The drop is traditionally handled by the target and not the source. Of course you can have the behaviour you want by reimplementing mouse events and starting the drag manually (and prior to doing that you need to remove the item from the model) but then you have to handle all possible drop situations manually (and you'll have no information about WHO accepted the drop).
Bookmarks