bool QDecTouchArea::sceneEvent(QEvent *event) { bool interceptedEvent = false; if(event->type() == QEvent::TouchBegin) { updateTouchData(event); // must be accepted to receive following events // (QEvent::TouchUpdate and QEvent::TouchEnd) event->accept(); interceptedEvent = true; } else if(event->type() == QEvent::TouchUpdate) { updateTouchData(event); interceptedEvent = true; } else if(event->type() == QEvent::TouchEnd) { updateTouchData(event); interceptedEvent = true; } return interceptedEvent; }
void QQuickMultiPointTouchArea::touchEvent(QTouchEvent *event) { switch (event->type()) { case QEvent::TouchBegin: case QEvent::TouchUpdate: case QEvent::TouchEnd: { //if e.g. a parent Flickable has the mouse grab, don't process the touch events QQuickWindow *c = window(); QQuickItem *grabber = c ? c->mouseGrabberItem() : 0; if (grabber && grabber != this && grabber->keepMouseGrab() && grabber->isEnabled()) { QQuickItem *item = this; while ((item = item->parentItem())) { if (item == grabber) return; } } updateTouchData(event); if (event->type() == QEvent::TouchEnd) ungrab(); break; } case QEvent::TouchCancel: ungrab(); break; default: QQuickItem::touchEvent(event); break; } }
void QQuickMultiPointTouchArea::mouseMoveEvent(QMouseEvent *event) { if (!isEnabled() || !_mouseEnabled) { QQuickItem::mouseMoveEvent(event); return; } if (event->source() != Qt::MouseEventNotSynthesized) return; _movedTouchPoints.clear(); updateTouchData(event); }
void QQuickMultiPointTouchArea::mousePressEvent(QMouseEvent *event) { if (!isEnabled() || !_mouseEnabled || event->button() != Qt::LeftButton) { QQuickItem::mousePressEvent(event); return; } _stealMouse = false; setKeepMouseGrab(false); event->setAccepted(true); _mousePos = event->localPos(); if (event->source() != Qt::MouseEventNotSynthesized) return; if (_touchPoints.count() >= _minimumTouchPoints - 1 && _touchPoints.count() < _maximumTouchPoints) { updateTouchData(event); } }
void QQuickMultiPointTouchArea::mouseReleaseEvent(QMouseEvent *event) { _stealMouse = false; if (!isEnabled() || !_mouseEnabled) { QQuickItem::mouseReleaseEvent(event); return; } if (event->source() != Qt::MouseEventNotSynthesized) return; if (_mouseTouchPoint) { updateTouchData(event); _mouseTouchPoint->setInUse(false); _releasedTouchPoints.removeAll(_mouseTouchPoint); _mouseTouchPoint = Q_NULLPTR; } QQuickWindow *c = window(); if (c && c->mouseGrabberItem() == this) ungrabMouse(); setKeepMouseGrab(false); }
void MPR121_t::updateAll(){ updateTouchData(); updateBaselineData(); updateFilteredData(); }