diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2011-04-22 02:42:52 +1000 |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2011-04-22 02:42:52 +1000 |
commit | 5d048227a3c3e4a4401be7b57cfa4b4950612223 (patch) | |
tree | 6cf9d1d87be42caf741229f6b310e8f37533d360 /src/declarative/graphicsitems/qdeclarativemousearea_p_p.h | |
parent | 922090951809a2523223c6dcdac46f661a914b3d (diff) | |
parent | 1b95c4e6502ede5a980aaf5a2ed9dad283b3eadd (diff) |
Merge branch 'qt-4.8-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration into master-integration
* 'qt-4.8-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration:
remove exec bit ... again ...
Add Korean translation
QDeclarativeDebug: Fix typo in warning
QDeclarativeDebug: Fix endless loop for property with SCRITABLE false
Fix Symbian/Linux compilation breakage in plugins/qmltooling
Build break fix for simulated QS60Style
fix unititialized value use when timestamping qconfig.h
Drift correction and better accuracy for repeating timers in Symbian
Make QMLViewer startup animation stop after a while
Fix excessive scrolling in TextInput with mid string pre-edit text.
Diffstat (limited to 'src/declarative/graphicsitems/qdeclarativemousearea_p_p.h')
-rw-r--r-- | src/declarative/graphicsitems/qdeclarativemousearea_p_p.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/declarative/graphicsitems/qdeclarativemousearea_p_p.h b/src/declarative/graphicsitems/qdeclarativemousearea_p_p.h index 67694fb7ae..7248c92777 100644 --- a/src/declarative/graphicsitems/qdeclarativemousearea_p_p.h +++ b/src/declarative/graphicsitems/qdeclarativemousearea_p_p.h @@ -70,6 +70,8 @@ public: : absorb(true), hovered(false), pressed(false), longPress(false), moved(false), stealMouse(false), doubleClick(false), preventStealing(false), drag(0) { + Q_Q(QDeclarativeMouseArea); + forwardTo = QDeclarativeListProperty<QGraphicsObject>(q, forwardToList); } ~QDeclarativeMouseAreaPrivate(); @@ -89,6 +91,18 @@ public: lastModifiers = event->modifiers(); } + void forwardEvent(QGraphicsSceneMouseEvent* event) + { + Q_Q(QDeclarativeMouseArea); + for(int i=0; i < forwardToList.count(); i++){ + event->setPos(forwardToList[i]->mapFromScene(event->scenePos())); + forwardToList[i]->scene()->sendEvent(forwardToList[i], event); + if(event->isAccepted()) + break; + } + event->setPos(q->mapFromScene(event->scenePos())); + } + bool isPressAndHoldConnected() { Q_Q(QDeclarativeMouseArea); static int idx = QObjectPrivate::get(q)->signalIndex("pressAndHold(QDeclarativeMouseEvent*)"); @@ -121,6 +135,9 @@ public: Qt::MouseButtons lastButtons; Qt::KeyboardModifiers lastModifiers; QBasicTimer pressAndHoldTimer; + + QDeclarativeListProperty<QGraphicsObject> forwardTo; + QList<QGraphicsObject*> forwardToList; }; QT_END_NAMESPACE |