Судя по исходному коду - никак:
C++ (Qt)
while (w) {
if (w->isEnabled() && w->acceptDrops()) {
res = d->notify_helper(w, dragEvent);
if (res && dragEvent->isAccepted()) {
QDragManager::self()->setCurrentTarget(w);
break;
}
}
if (w->isWindow())
break;
dragEvent->p = w->mapToParent(dragEvent->p);
w = w->parentWidget();
}
А можно было бы, если бы было так:
C++ (Qt)
while (w) {
if (w->isEnabled() && w->acceptDrops()) {
res = d->notify_helper(w, dragEvent);
if (res) {
if (dragEvent->isAccepted())
QDragManager::self()->setCurrentTarget(w);
break;
}
}
if (w->isWindow())
break;
dragEvent->p = w->mapToParent(dragEvent->p);
w = w->parentWidget();
}
И если бы QWidget::dragEnterEvent() возвращал bool. Хотя это и так можно сделать, переопределив QWidget::event().
Если патчить Qt вас не пугает - вперёд (-: