How about smth like this?:
1 reimplement QDeclarativeItem with drag and drop methods which will hold the QMimeData and then place component above the views and make it active when needed;
2 Or play with delegates of views, by placing reimplemented component inside them?