void game::handleEvents ( ) { bool bShouldClear_ses = false; sf::Event eventToHandle; while (m_rw.pollEvent (eventToHandle)) { if (bShouldClear_ses) { //DO NOTHING. Event is void and event queue must be cleared. } else { sf::Event::EventType eventtypeToHandle = eventToHandle.type; switch (eventtypeToHandle) { case sf::Event::Closed: { m_gameaction = gameaction::Exit; bShouldClear_ses = true; break; } case sf::Event::MouseButtonPressed: { handleMousePress (eventToHandle); break; } case sf::Event::MouseButtonReleased: { handleMouseRelease (bShouldClear_ses, eventToHandle); break; } case sf::Event::TextEntered: { handleTextEntered (bShouldClear_ses, eventToHandle); break; } } if (bShouldClear_ses) { clear (m_ses); m_bPrepared_ses = false; } } } }
bool PlaceableWindowProxy::eventFilter(QObject *, QEvent *event) { // This should never happen, but doesn't hurt to be defensive. if (!target_) { return false; } if (!visible_) { return false; } switch (event->type()) { case QEvent::MouseButtonPress: return handleMousePress(static_cast<QMouseEvent*>(event)); case QEvent::MouseButtonRelease: return handleMouseRelease(static_cast<QMouseEvent*>(event)); case QEvent::MouseMove: return handleMouseMove(static_cast<QMouseEvent*>(event)); case QEvent::Resize: return handleResize(static_cast<QResizeEvent*>(event)); default: return false; } }
bool UIToolsHandlerMouse::handle(QGraphicsSceneMouseEvent *pEvent, UIMouseEventType enmType) const { /* Process passed event: */ switch (enmType) { case UIMouseEventType_Press: return handleMousePress(pEvent); case UIMouseEventType_Release: return handleMouseRelease(pEvent); } /* Pass event if unknown: */ return false; }
bool UIGChooserHandlerMouse::handle(QGraphicsSceneMouseEvent *pEvent, UIMouseEventType type) const { /* Process passed event: */ switch (type) { case UIMouseEventType_Press: return handleMousePress(pEvent); case UIMouseEventType_Release: return handleMouseRelease(pEvent); case UIMouseEventType_DoubleClick: return handleMouseDoubleClick(pEvent); } /* Pass event if unknown: */ return false; }
void PopupMenu::init() { _menu->setResizedCallback([this] { handleMenuResize(); }); _menu->setActivatedCallback([this](QAction *action, int actionTop, TriggeredSource source) { handleActivated(action, actionTop, source); }); _menu->setTriggeredCallback([this](QAction *action, int actionTop, TriggeredSource source) { handleTriggered(action, actionTop, source); }); _menu->setKeyPressDelegate([this](int key) { return handleKeyPress(key); }); _menu->setMouseMoveDelegate([this](QPoint globalPosition) { handleMouseMove(globalPosition); }); _menu->setMousePressDelegate([this](QPoint globalPosition) { handleMousePress(globalPosition); }); _menu->setMouseReleaseDelegate([this](QPoint globalPosition) { handleMouseRelease(globalPosition); }); handleCompositingUpdate(); setWindowFlags(Qt::WindowFlags(Qt::FramelessWindowHint) | Qt::BypassWindowManagerHint | Qt::Popup | Qt::NoDropShadowWindowHint); setMouseTracking(true); hide(); setAttribute(Qt::WA_NoSystemBackground, true); setAttribute(Qt::WA_TranslucentBackground, true); }
/** Handles events. Returns true if handled, false otherwise.*/ bool OrbitCameraManipulator::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa ) { switch( ea.getEventType() ) { case osgGA::GUIEventAdapter::FRAME: return handleFrame( ea, aa ); case osgGA::GUIEventAdapter::RESIZE: return handleResize( ea, aa ); default: break; } if( ea.getHandled() ) { return false; } computeRayPointer( ea, aa ); bool handled = false; switch( ea.getEventType() ) { case osgGA::GUIEventAdapter::MOVE: handled = handleMouseMove( ea, aa ); break; case osgGA::GUIEventAdapter::DRAG: handled = handleMouseDrag( ea, aa ); break; case osgGA::GUIEventAdapter::PUSH: handled = handleMousePush( ea, aa ); break; case osgGA::GUIEventAdapter::RELEASE: handled = handleMouseRelease( ea, aa ); break; case osgGA::GUIEventAdapter::KEYDOWN: handled = handleKeyDown( ea, aa ); break; case osgGA::GUIEventAdapter::KEYUP: m_control_key_down = false; handled = handleKeyUp( ea, aa ); break; case osgGA::GUIEventAdapter::SCROLL: if( _flags & PROCESS_MOUSE_WHEEL ) handled = handleMouseWheel( ea, aa ); else handled = false; break; default: handled = false; } return handled; }
void Menu::mouseReleaseEvent(QMouseEvent *e) { handleMouseRelease(e->globalPos()); }