diff options
Diffstat (limited to 'src/declarative/items/qsgitem.cpp')
-rw-r--r-- | src/declarative/items/qsgitem.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/declarative/items/qsgitem.cpp b/src/declarative/items/qsgitem.cpp index f2d26955aa..328da16ff4 100644 --- a/src/declarative/items/qsgitem.cpp +++ b/src/declarative/items/qsgitem.cpp @@ -45,6 +45,7 @@ #include "qsgcanvas.h" #include <QtScript/qscriptengine.h> #include "qsgcanvas_p.h" +#include "qsgevent.h" #include "qsgevents_p_p.h" @@ -1689,6 +1690,26 @@ void QSGItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) Q_UNUSED(event); } +void QSGItem::dragMoveEvent(QSGDragEvent *event) +{ + event->setAccepted(false); +} + +void QSGItem::dragEnterEvent(QSGDragEvent *event) +{ + event->setAccepted(false); +} + +void QSGItem::dragExitEvent(QSGDragEvent *event) +{ + event->setAccepted(false); +} + +void QSGItem::dragDropEvent(QSGDragEvent *event) +{ + event->setAccepted(false); +} + bool QSGItem::childMouseEventFilter(QSGItem *, QEvent *) { return false; @@ -2151,6 +2172,27 @@ void QSGItemPrivate::deliverHoverEvent(QGraphicsSceneHoverEvent *e) } } +void QSGItemPrivate::deliverDragEvent(QSGDragEvent *e) +{ + Q_Q(QSGItem); + switch (e->type()) { + default: + Q_ASSERT(!"Unknown event type"); + case QSGEvent::SGDragEnter: + q->dragEnterEvent(e); + break; + case QSGEvent::SGDragExit: + q->dragExitEvent(e); + break; + case QSGEvent::SGDragMove: + q->dragMoveEvent(e); + break; + case QSGEvent::SGDragDrop: + q->dragDropEvent(e); + break; + } +} + void QSGItem::itemChange(ItemChange change, const ItemChangeData &value) { Q_UNUSED(change); |