summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems/qdeclarativemousearea_p_p.h
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-04-22 02:42:52 +1000
committerQt Continuous Integration System <qt-info@nokia.com>2011-04-22 02:42:52 +1000
commit5d048227a3c3e4a4401be7b57cfa4b4950612223 (patch)
tree6cf9d1d87be42caf741229f6b310e8f37533d360 /src/declarative/graphicsitems/qdeclarativemousearea_p_p.h
parent922090951809a2523223c6dcdac46f661a914b3d (diff)
parent1b95c4e6502ede5a980aaf5a2ed9dad283b3eadd (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.h17
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