void GenericCodeEditor::wheelEvent( QWheelEvent * e ) { // FIXME: Disable zooming for now, to avoid nasty effect when Ctrl // is unintentionally pressed while inertial scrolling is going on. // Moreover, Ctrl|Shift + Wheel scrolls by pages, which is also // rather annoying. // So rather just forward the event without modifiers. QWheelEvent modifiedEvent( e->pos(), e->globalPos(), e->delta(), e->buttons(), 0, e->orientation() ); QPlainTextEdit::wheelEvent( &modifiedEvent ); return; #if 0 if (e->modifiers() == Qt::ControlModifier) { if (e->delta() > 0) zoomIn(); else zoomOut(); return; } QPlainTextEdit::wheelEvent(e); #endif }
void VideoView::mouseMoveEvent(QMouseEvent *e) { switch (m_currentMode) { case Mode::PANZOOM: { if (m_panZoomState.panState) { const QPointF delta = e->localPos() - (*m_panZoomState.panState).lastPos; (*m_panZoomState.panState).lastPos = e->localPos(); m_panZoomState.isChanged = true; m_panZoomState.panX -= static_cast<float>(delta.x()); m_panZoomState.panY -= static_cast<float>(delta.y()); update(); } break; } case Mode::INTERACTION: { e->accept(); QPoint p = unprojectScreenPos(e->pos()); const QPointF localPos(p); QMouseEvent modifiedEvent(e->type(),localPos,e->screenPos(),e->button(),e->buttons(),e->modifiers()); m_biotracker.mouseEvent(&modifiedEvent); break; } default: { assert(false); break; } } }
void VideoView::mousePressEvent(QMouseEvent *e) { switch (m_currentMode) { case Mode::PANZOOM: { if (QApplication::keyboardModifiers() == Qt::NoModifier) { m_panZoomState.isChanged = true; m_panZoomState.panState = BioTracker::Core::CurrentPanState(e->localPos()); setCursor(Qt::ClosedHandCursor); } if (e->button() == Qt::LeftButton && e->type() == QEvent::MouseButtonDblClick) { fitToWindow(); } break; } case Mode::INTERACTION: { e->accept(); QPoint p = unprojectScreenPos(e->pos()); const QPointF localPos(p); QMouseEvent modifiedEvent(e->type(),localPos,e->screenPos(),e->button(),e->buttons(),e->modifiers()); m_biotracker.mouseEvent(&modifiedEvent); break; } default: { assert(false); break; } } }
void VideoView::mouseReleaseEvent(QMouseEvent *e) { switch (m_currentMode) { case Mode::PANZOOM: { setCursor(Qt::OpenHandCursor); m_panZoomState.panState.reset(); break; } case Mode::INTERACTION: { e->accept(); QPoint p = unprojectScreenPos(e->pos()); const QPointF localPos(p); QMouseEvent modifiedEvent(e->type(),localPos,e->screenPos(),e->button(),e->buttons(),e->modifiers()); m_biotracker.mouseEvent(&modifiedEvent); break; } default: { assert(false); break; } } }
void VideoView::wheelEvent(QWheelEvent *e) { BioTracker::Core::TextureObject const &texture = m_biotracker.getTrackingThread().getTexture(); switch (m_currentMode) { case Mode::PANZOOM: { if (e->orientation() == Qt::Vertical) { const int numDegrees = e->delta(); const float deltaZoom = numDegrees; m_panZoomState = BioTracker::Core::ScreenHelper::zoomTo( m_panZoomState, texture.width(), texture.height(), this->width(), this->height(), deltaZoom, e->pos() ); update(); e->accept(); } break; } case Mode::INTERACTION: { e->accept(); const QPoint p = unprojectScreenPos(e->pos()); const QPointF localPos(p); QWheelEvent modifiedEvent(e->pos(),localPos,e->pixelDelta(),e->angleDelta(),e->delta(),e->orientation(),e->buttons(), e->modifiers()); QCoreApplication::sendEvent(QApplication::activeWindow(), &modifiedEvent); m_biotracker.mouseWheelEvent(&modifiedEvent); break; } default: { assert(false); break; } } }
void ItemViewWidget::dropEvent(QDropEvent *event) { QDropEvent modifiedEvent(QPointF((visualRect(m_model->index(0, 0)).x() + 1), event->posF().y()), Qt::MoveAction, event->mimeData(), event->mouseButtons(), event->keyboardModifiers(), event->type()); QTreeView::dropEvent(&modifiedEvent); if (modifiedEvent.isAccepted()) { event->accept(); m_dropRow = indexAt(event->pos()).row(); if (dropIndicatorPosition() == QAbstractItemView::BelowItem) { ++m_dropRow; } m_isModified = true; emit modified(); QTimer::singleShot(50, this, SLOT(updateDropSelection())); } }
void WinGeneral::setModified() { emit modifiedEvent(); }
void EventWinRecurrence::setModified() { emit modifiedEvent(); }