Beispiel #1
0
bool SceneItem::event(QEvent* event) {
    switch (event->type()) {
    case QEvent::KeyPress:
        keyPressEvent(static_cast<QKeyEvent*>(event));
        break;
    case QEvent::KeyRelease:
        keyReleaseEvent(static_cast<QKeyEvent*>(event));
        break;
    case SceneMouseEvent::DOUBLE_CLICK_TYPE:
        mouseDoubleClickEvent(static_cast<SceneMouseEvent*>(event));
        break;
    case SceneMouseEvent::MOVE_TYPE:
        mouseMoveEvent(static_cast<SceneMouseEvent*>(event));
        break;
    case SceneMouseEvent::PRESS_TYPE:
        mousePressEvent(static_cast<SceneMouseEvent*>(event));
        break;
    case SceneMouseEvent::RELEASE_TYPE:
        mouseReleaseEvent(static_cast<SceneMouseEvent*>(event));
        break;
    case QEvent::Wheel:
        wheelEvent(static_cast<QWheelEvent*>(event));
        break;
    default:
        return false;
    }
    return true;
}
void KisColorPatches::resizeEvent(QResizeEvent* event)
{
    if(size()==QSize(1, 1))
        return;

    QWheelEvent dummyWheelEvent(QPoint(), 0, Qt::NoButton, Qt::NoModifier);
    wheelEvent(&dummyWheelEvent);

    if(parentWidget()==0) {
        // this instance is a popup
        setMinimumWidth(m_patchWidth*(m_patchCount/4));
        setMaximumWidth(minimumWidth());
    }

    if(m_allowScrolling == false && event->oldSize() != event->size()) {
        if(m_direction == Horizontal) {
            setMaximumHeight(heightForWidth(width()));
            setMinimumHeight(heightForWidth(width()));
        }
        else {
            setMaximumWidth(widthForHeight(height()));
            setMinimumWidth(widthForHeight(height()));
        }
    }
}
Beispiel #3
0
void EventListener::onEvent(Event* e) {
    /*
        since we already checked which type we have we can safely use
        the faster static_cast (rl)
    */
    if (typeid(*e) == typeid(MouseEvent)) {
        MouseEvent* me = static_cast<MouseEvent*>(e);
        if (me->action() == MouseEvent::PRESSED)
            mousePressEvent(me);
        else if (me->action() == MouseEvent::RELEASED)
            mouseReleaseEvent(me);
        else if (me->action() == MouseEvent::MOTION)
            mouseMoveEvent(me);
        else if (me->action() == MouseEvent::DOUBLECLICK)
            mouseDoubleClickEvent(me);
        else if (me->action() == MouseEvent::WHEEL)
            wheelEvent(me);
    }
    else if (typeid(*e) == typeid(KeyEvent)) {
        keyEvent(static_cast<KeyEvent*>(e));
    }
    else if (typeid(*e) == typeid(TimeEvent)) {
        timerEvent(static_cast<TimeEvent*>(e));
    }
    else if (typeid(*e) == typeid(TouchEvent)) {
        touchEvent(static_cast<TouchEvent*>(e));
    }
}
Beispiel #4
0
bool NextClient::eventFilter(TQObject *o, TQEvent *e)
{
    if (TQT_BASE_OBJECT(o) != TQT_BASE_OBJECT(widget()))
	return false;
    switch (e->type()) {
    case TQEvent::Resize:
	resizeEvent(TQT_TQRESIZEEVENT( e ));
	return true;
    case TQEvent::Paint:
	paintEvent(TQT_TQPAINTEVENT( e ));
	return true;
    case TQEvent::MouseButtonDblClick:
	mouseDoubleClickEvent(TQT_TQMOUSEEVENT( e ));
	return true;
    case TQEvent::Wheel:
	wheelEvent( TQT_TQWHEELEVENT( e ));
	return true;
    case TQEvent::MouseButtonPress:
	processMousePressEvent(TQT_TQMOUSEEVENT( e ));
	return true;
    case TQEvent::Show:
	showEvent(TQT_TQSHOWEVENT( e ));
	return true;
    default:
	break;
    }
    return false;
}
Beispiel #5
0
bool NextClient::eventFilter(QObject *o, QEvent *e)
{
    if (o != widget())
	return false;
    switch (e->type()) {
    case QEvent::Resize:
	resizeEvent(static_cast< QResizeEvent* >( e ));
	return true;
    case QEvent::Paint:
	paintEvent(static_cast< QPaintEvent* >( e ));
	return true;
    case QEvent::MouseButtonDblClick:
	mouseDoubleClickEvent(static_cast< QMouseEvent* >( e ));
	return true;
    case QEvent::Wheel:
	wheelEvent( static_cast< QWheelEvent* >( e ));
	return true;
    case QEvent::MouseButtonPress:
	processMousePressEvent(static_cast< QMouseEvent* >( e ));
	return true;
    case QEvent::Show:
	showEvent(static_cast< QShowEvent* >( e ));
	return true;
    default:
	break;
    }
    return false;
}
Beispiel #6
0
int carte::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QWidget::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: ChangeRes(); break;
        case 1: changeRes2((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 2: ChangeZoom(); break;
        case 3: ChangeZoomIn(); break;
        case 4: signalDessinerChemin((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 5: SignalFlag((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 6: augmenter_zoom(); break;
        case 7: diminuer_zoom(); break;
        case 8: fermerProjet(); break;
        case 9: setNbpoint(); break;
        case 10: dessinerChemin((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 11: attributCouleur((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 12: sauvegardeItineraire((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 13: placerFlag1((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 14: placerFlag2((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 15: mousePressEvent((*reinterpret_cast< QMouseEvent*(*)>(_a[1]))); break;
        case 16: mouseReleaseEvent((*reinterpret_cast< QMouseEvent*(*)>(_a[1]))); break;
        case 17: wheelEvent((*reinterpret_cast< QWheelEvent*(*)>(_a[1]))); break;
        case 18: paintEvent((*reinterpret_cast< QPaintEvent*(*)>(_a[1]))); break;
        default: ;
        }
        _id -= 19;
    }
    return _id;
}
Beispiel #7
0
bool ComboTabBar::eventFilter(QObject* obj, QEvent* ev)
{
    if (m_bluredBackground  && ev->type() == QEvent::Paint &&
        (obj == m_leftContainer || obj == m_rightContainer ||
         obj == m_mainTabBarWidget || obj == m_pinnedTabBarWidget)) {
        QPaintEvent* event = static_cast<QPaintEvent*>(ev);
        QPainter p(qobject_cast<QWidget*>(obj));
        p.setCompositionMode(QPainter::CompositionMode_Clear);
        p.fillRect(event->rect(), QColor(0, 0, 0, 0));
    }

    if (obj == m_mainTabBar && ev->type() == QEvent::Resize) {
        QResizeEvent* event = static_cast<QResizeEvent*>(ev);
        if (event->oldSize().height() != event->size().height()) {
            setUpLayout();
        }
    }

    // Handle wheel events exclusively in ComboTabBar
    if (ev->type() == QEvent::Wheel) {
        wheelEvent(static_cast<QWheelEvent*>(ev));
        return true;
    }

    return QWidget::eventFilter(obj, ev);
}
void QFontComboBox_QtDShell::__override_wheelEvent(QWheelEvent*  e0, bool static_call)
{
    if (static_call) {
        QComboBox::wheelEvent((QWheelEvent* )e0);
    } else {
        wheelEvent((QWheelEvent* )e0);
    }
}
Beispiel #9
0
void QSlider_QtDShell::__override_wheelEvent(QWheelEvent*  e0, bool static_call)
{
    if (static_call) {
        QAbstractSlider::wheelEvent((QWheelEvent* )e0);
    } else {
        wheelEvent((QWheelEvent* )e0);
    }
}
Beispiel #10
0
void QStatusBar_QtDShell::__override_wheelEvent(QWheelEvent*  arg__1, bool static_call)
{
    if (static_call) {
        QWidget::wheelEvent((QWheelEvent* )arg__1);
    } else {
        wheelEvent((QWheelEvent* )arg__1);
    }
}
void QGraphicsEllipseItem_QtDShell::__override_wheelEvent(QGraphicsSceneWheelEvent*  event0, bool static_call)
{
    if (static_call) {
        QGraphicsItem::wheelEvent((QGraphicsSceneWheelEvent* )event0);
    } else {
        wheelEvent((QGraphicsSceneWheelEvent* )event0);
    }
}
void QAbstractPageSetupDialog_QtDShell::__override_wheelEvent(QWheelEvent*  arg__1, bool static_call)
{
    if (static_call) {
        QWidget::wheelEvent((QWheelEvent* )arg__1);
    } else {
        wheelEvent((QWheelEvent* )arg__1);
    }
}
Beispiel #13
0
void QDateEdit_QtDShell::__override_wheelEvent(QWheelEvent*  event0, bool static_call)
{
    if (static_call) {
        QDateTimeEdit::wheelEvent((QWheelEvent* )event0);
    } else {
        wheelEvent((QWheelEvent* )event0);
    }
}
Beispiel #14
0
bool NaClApplication::HandleInputEvent(const pp::InputEvent& event) {
    /* Don't handle anything during switch from/to fullscreen */
    if(flags & Flag::FullscreenSwitchInProgress) return false;

    Flags tmpFlags = flags;

    switch(event.GetType()) {
        case PP_INPUTEVENT_TYPE_KEYDOWN:
        case PP_INPUTEVENT_TYPE_KEYUP: {
            pp::KeyboardInputEvent keyEvent(event);
            KeyEvent e(static_cast<KeyEvent::Key>(keyEvent.GetKeyCode()), static_cast<InputEvent::Modifier>(keyEvent.GetModifiers()));
            event.GetType() == PP_INPUTEVENT_TYPE_KEYDOWN ? keyPressEvent(e) : keyReleaseEvent(e);
            if(!e.isAccepted()) return false;
            break;
        }

        case PP_INPUTEVENT_TYPE_MOUSEDOWN:
        case PP_INPUTEVENT_TYPE_MOUSEUP: {
            pp::MouseInputEvent mouseEvent(event);
            MouseEvent e(static_cast<MouseEvent::Button>(mouseEvent.GetButton()), {mouseEvent.GetPosition().x(), mouseEvent.GetPosition().y()}, static_cast<InputEvent::Modifier>(mouseEvent.GetModifiers()));
            event.GetType() == PP_INPUTEVENT_TYPE_MOUSEDOWN ? mousePressEvent(e) : mouseReleaseEvent(e);
            if(!e.isAccepted()) return false;
            break;
        }

        case PP_INPUTEVENT_TYPE_WHEEL: {
            pp::WheelInputEvent wheelEvent(event);
            if(Math::TypeTraits<Float>::equals(wheelEvent.GetDelta().y(), 0.0f)) return false;
            MouseEvent e(wheelEvent.GetDelta().y() > 0 ? MouseEvent::Button::WheelUp : MouseEvent::Button::WheelDown, {}, static_cast<InputEvent::Modifier>(wheelEvent.GetModifiers()));
            mousePressEvent(e);
            if(!e.isAccepted()) return false;
            break;
        }

        case PP_INPUTEVENT_TYPE_MOUSEMOVE: {
            pp::MouseInputEvent mouseEvent(event);
            MouseMoveEvent e({mouseEvent.GetPosition().x(), mouseEvent.GetPosition().y()},  {mouseEvent.GetMovement().x(), mouseEvent.GetMovement().y()}, static_cast<InputEvent::Modifier>(mouseEvent.GetModifiers()));
            mouseMoveEvent(e);
            if(!e.isAccepted()) return false;
            break;
        }

        default: return false;
    }

    /* Assume everything is properly sequential here */
    CORRADE_INTERNAL_ASSERT((tmpFlags & Flag::SwapInProgress) == (flags & Flag::SwapInProgress));

    /* Redraw, if it won't be handled after swap automatically */
    if((flags & Flag::Redraw) && !(flags & Flag::SwapInProgress)) {
        flags &= ~Flag::Redraw;
        drawEvent();
    }

    return true;
}
XAbstractCanvasController::UsedFlags XAbstractCanvasController::triggerWheelEvent(int delta,
                       Qt::Orientation orientation,
                       QPoint point,
                       Qt::MouseButtons buttonsDown,
                       Qt::KeyboardModifiers modifiers)
  {
  UsedFlags ret = wheelEvent(delta, orientation, point, buttonsDown, modifiers);
  _lastKnownMousePosition = point;
  return ret;
  }
Beispiel #16
0
void SwitchWindow::contextEvent(QEvent *event)
{
    switch (event->type()) {
        case QEvent::GraphicsSceneMousePress:
            contextEvent(static_cast<QGraphicsSceneMouseEvent*>(event));
            break;
        case QEvent::GraphicsSceneWheel:
            wheelEvent(static_cast<QGraphicsSceneWheelEvent*>(event));
            break;
        default:
            break;
    }
}
Beispiel #17
0
    virtual bool eventFilter( QObject *object, QEvent *event )
    {
        if ( event->type() == QEvent::Wheel )
        {
            QWheelEvent *we = ( QWheelEvent * )event;

            QWheelEvent wheelEvent( QPoint( 5, 5 ), we->delta(),
                we->buttons(), we->modifiers(),
                we->orientation() );

            QApplication::sendEvent( this, &wheelEvent );
            return true;
        }
        return QwtWheel::eventFilter( object, event );
    }
Beispiel #18
0
void ToolListWidget::mouseMoveEvent(QMouseEvent *e)
{
    QListWidget::mouseMoveEvent(e);
    static int offset = 0;

    QWheelEvent wheelEvent(QPoint(),
                           offset--,
                           Qt::MiddleButton,
                           Qt::NoModifier,
                           Qt::Vertical);

    qDebug() << "mouseMoveEvent" << ":" << this->focusWidget()->objectName();

    QApplication::sendEvent(this->focusWidget(), &wheelEvent);
}
Beispiel #19
0
bool ComboTabBar::eventFilter(QObject* obj, QEvent* ev)
{
    if (obj == m_mainTabBar && ev->type() == QEvent::Resize) {
        QResizeEvent* event = static_cast<QResizeEvent*>(ev);
        if (event->oldSize().height() != event->size().height()) {
            setUpLayout();
        }
    }

    // Handle wheel events exclusively in ComboTabBar
    if (ev->type() == QEvent::Wheel) {
        wheelEvent(static_cast<QWheelEvent*>(ev));
        return true;
    }

    return QWidget::eventFilter(obj, ev);
}
    virtual bool eventFilter( QObject *object, QEvent *event )
    {
        if ( event->type() == QEvent::Wheel )
        {
            const QWheelEvent *we = static_cast<QWheelEvent *>( event );




            /*
             * void QwtWheel::wheelEvent( QWheelEvent *event )
             * {
             *      if ( !wheelRect().contains( event->pos() ) )
             *      {
             *          event->ignore();
             *          return;
             *      }
             *      ………………
             * }
             *
             * 以上代码是从QwtWheel里面摘抄出来的,可以看出有ignore的分支
             * 看看QPoint( 5, 5 )什么意思?
             */
            QWheelEvent wheelEvent( QPoint( 5, 5 ), we->delta(),
                we->buttons(), we->modifiers(),
                we->orientation() );

            /* 注释掉此行代码,在wheel上面滚动滚轮,程序就不会崩溃了 */
            /*
             * 原因分析,若在Wheel的wheelEvent()函数中ignore了Event,则Event会继续向其父祖件WheelBox传播,
             * 而传向WheelBox的Event会首先进入此事件滤波函数,然后又会通过sendEvent()函数发送给Wheel,再被
             * ignore,再传给父祖件WheelBox……陷入死循环,从而程序崩溃。
             */
//            QApplication::sendEvent( this, &wheelEvent );

            /* WXLmjr于2016-12-11日屏蔽上一行代码,修改为下面这行代码,解决程序崩溃问题,
             * 但直接调用event()函数和调用sendEvent()函数有什么区别?导致了崩溃的问题?
             */
            this->event(&wheelEvent);

            return true;
        }
        return QwtWheel::eventFilter( object, event );
    }
Beispiel #21
0
bool RenderWidget::eventFilter(QObject* obj, QEvent* event)
{
    // handle event in this widget, is there a better way to do this?
    if (event->type() == QEvent::MouseButtonPress)
        mousePressEvent(static_cast<QMouseEvent*>(event));
    if (event->type() == QEvent::MouseButtonRelease)
        mouseReleaseEvent(static_cast<QMouseEvent*>(event));
    if (event->type() == QEvent::MouseMove)
        mouseMoveEvent(static_cast<QMouseEvent*>(event));
    if (event->type() == QEvent::KeyPress)
        keyPressEvent(static_cast<QKeyEvent*>(event));
    if (event->type() == QEvent::KeyRelease)
        keyReleaseEvent(static_cast<QKeyEvent*>(event));
    if (event->type() == QEvent::Wheel)
        wheelEvent(static_cast<QWheelEvent *>(event));

    // Always pass the event on to GLWidget, i.e. to OSG event queue
    return QObject::eventFilter(obj, event);
}
Beispiel #22
0
void BrowserWidget::mouseMoveEvent(QMouseEvent *event) {
    if (event->buttons() & Qt::LeftButton) {
        freezeTilesFor(freezeForMsecsWhenDragging);
        QPoint newScrollPos = lastScrollPos - event->pos() + lastMousePos;
        horizontalScrollBar()->setValue(newScrollPos.x());
        verticalScrollBar()->setValue(newScrollPos.y());
        
        dragDistance += abs(event->pos().x() - lastMousePos.x());
        dragDistance += abs(event->pos().y() - lastMousePos.y());
        
        // emit wheel event to let you scroll overflow:auto divs and similar things
        if (event->pos().y() - lastMousePos.y()) {
            wheelEvent(new QWheelEvent(event->pos(), event->pos().y() - lastMousePos.y(), 0, 0));
        }
        
        lastMousePos = event->pos();
        lastScrollPos = newScrollPos;
    }
}
Beispiel #23
0
bool CanvasQt::event(QEvent *e) {
    switch (e->type()) {
    case QEvent::KeyPress:
        keyPressEvent(static_cast<QKeyEvent*>(e));
        return true;
    case QEvent::KeyRelease:
        keyReleaseEvent(static_cast<QKeyEvent*>(e));
        return true;
    case QEvent::MouseButtonPress:
        if(!gestureMode_)
            mousePressEvent(static_cast<QMouseEvent*>(e));
        return true;
    case QEvent::MouseButtonRelease:
        if(!gestureMode_)
            mouseReleaseEvent(static_cast<QMouseEvent*>(e));
        return true;
    case QEvent::MouseMove:
        if(!gestureMode_)
            mouseMoveEvent(static_cast<QMouseEvent*>(e));
        return true;
    case QEvent::Wheel:
        wheelEvent(static_cast<QWheelEvent*>(e));
        return true;
#ifndef QT_NO_GESTURES
    case QEvent::TouchBegin:
    case QEvent::TouchEnd:
    case QEvent::TouchUpdate:
        touchEvent(static_cast<QTouchEvent*>(e));
        return true;
    case QEvent::Gesture:
        return gestureEvent(static_cast<QGestureEvent*>(e));
#endif
#ifdef USE_QWINDOW
    case QEvent::UpdateRequest:
        paintGL();
        return true;
#endif
    default:
        return QGLWindow::event(e);
    }
}
Beispiel #24
0
//====================================
// Event filter for application...
//------------------------------------
bool XInputEvent::eventFilter ( QObject*, QEvent* event ) {
	QMouseEvent* mouse = (QMouseEvent*)event;
	QWheelEvent* wheel = (QWheelEvent*)event;
	if ((! mouse) && (! wheel)) {
		return (false);
	}
	switch (mouse->type()) {
	case QEvent::MouseButtonDblClick:
		timer->stop();
		doubleClick   = TRUE;
		mouseReleased = FALSE;
		mBtn = mouse->button();
		doubleClickEvent (mBtn);
	break;
	case QEvent::MouseButtonPress:
		mBtn = mouse->button();
		pressEvent (mBtn);
		mouseReleased = FALSE;
		timer->start ( 300, TRUE );
		doubleClick = FALSE;
	break;
	case QEvent::MouseButtonRelease:
		if (! doubleClick) {
			mouseReleased = TRUE;
			mBtn = mouse->button();
			releaseEvent (mBtn);
		}
	break;
	case QEvent::Wheel:
		wheelEvent ( wheel->delta()/WHEEL_DELTA );
	break;
	case QEvent::MouseMove:
		moveEvent (mouse->x(),mouse->y());
	break;
	default:
	break;
	}
	return (false);
}
bool RangeProfilePlotManager::eventFilter(QObject* pObj, QEvent* pEvent)
{
   PlotView* pView = dynamic_cast<PlotView*>(pObj);
   if (pView == NULL || pView->getCurrentMouseMode() != mpMode)
   {
      return QObject::eventFilter(pObj, pEvent);
   }
   switch(pEvent->type())
   {
   case QEvent::MouseButtonPress:
      return mousePressEvent(pView, static_cast<QMouseEvent*>(pEvent));
   case QEvent::MouseButtonRelease:
      return mouseReleaseEvent(pView, static_cast<QMouseEvent*>(pEvent));
   case QEvent::MouseMove:
      return mouseMoveEvent(pView, static_cast<QMouseEvent*>(pEvent));
   case QEvent::Wheel:
      return wheelEvent(pView, static_cast<QWheelEvent*>(pEvent));
   case QEvent::KeyPress:
      return keyPressEvent(pView, static_cast<QKeyEvent*>(pEvent));
   default:
      ; // do nothing
   }
   return QObject::eventFilter(pObj, pEvent);
}
Beispiel #26
0
void DhQGLWidget::DvhwheelEvent(QWheelEvent* x1) {
  return wheelEvent(x1);
}
bool QDeclarativeViewInspector::eventFilter(QObject *obj, QEvent *event)
{
    if (obj == data->view) {
        // Event from view
        if (event->type() == QEvent::ChildRemoved) {
            // Might mean that viewport has changed
            if (data->view->viewport() != data->viewport.data())
                data->setViewport(data->view->viewport());
        }
        return QObject::eventFilter(obj, event);
    }

    // Event from viewport
    switch (event->type()) {
    case QEvent::Leave: {
        if (leaveEvent(event))
            return true;
        break;
    }
    case QEvent::MouseButtonPress: {
        if (mousePressEvent(static_cast<QMouseEvent*>(event)))
            return true;
        break;
    }
    case QEvent::MouseMove: {
        if (mouseMoveEvent(static_cast<QMouseEvent*>(event)))
            return true;
        break;
    }
    case QEvent::MouseButtonRelease: {
        if (mouseReleaseEvent(static_cast<QMouseEvent*>(event)))
            return true;
        break;
    }
    case QEvent::KeyPress: {
        if (keyPressEvent(static_cast<QKeyEvent*>(event)))
            return true;
        break;
    }
    case QEvent::KeyRelease: {
        if (keyReleaseEvent(static_cast<QKeyEvent*>(event)))
            return true;
        break;
    }
    case QEvent::MouseButtonDblClick: {
        if (mouseDoubleClickEvent(static_cast<QMouseEvent*>(event)))
            return true;
        break;
    }
    case QEvent::Wheel: {
        if (wheelEvent(static_cast<QWheelEvent*>(event)))
            return true;
        break;
    }
    default: {
        break;
    }
    } //switch

    // standard event processing
    return QObject::eventFilter(obj, event);
}
Beispiel #28
0
void DhQGroupBox::DvhwheelEvent(QWheelEvent* x1) {
  return wheelEvent(x1);
}
Beispiel #29
0
void DhQPushButton::DvhwheelEvent(QWheelEvent* x1) {
  return wheelEvent(x1);
}
void DhQAbstractSpinBox::DvhwheelEvent(QWheelEvent* x1) {
  return wheelEvent(x1);
}