void BaseGesture::OnTouchEventBase(AInputEvent* pEvent) { m_bCompletedGesture = false; OnTouchEvent(pEvent); }
void OnEvent(SDL_Event* Event) { /* if(Event->type < SDL_USEREVENT) DebugTrace("Event received" << Event->type);*/ switch(Event->type) { case SDL_QUIT: Running = false; break; /* On Android, this is triggered when the device orientation changed */ case SDL_WINDOWEVENT: window = SDL_GetWindowFromID(Event->window.windowID); int h,w; SDL_GetWindowSize(window, &w, &h); OnResize(w, h); break; case SDL_KEYDOWN: case SDL_KEYUP: OnKeyPressed(Event->key); break; case SDL_MOUSEMOTION: OnMouseMoved(Event->motion); break; case SDL_MOUSEBUTTONDOWN: OnMouseClicked(Event->button); break; case SDL_MOUSEBUTTONUP: { Uint32 eventTime = SDL_GetTicks(); if (eventTime - lastMouseUpTime <= 500) { OnMouseDoubleClicked(Event->button); } else { OnMouseClicked(Event->button); } lastMouseUpTime = eventTime; } break; case SDL_MOUSEWHEEL: OnMouseWheel(Event->wheel.x, Event->wheel.y); break; case SDL_FINGERMOTION: case SDL_FINGERDOWN: case SDL_FINGERUP: DebugTrace("Finger Up/Down/Motion detected:" ); OnTouchEvent(Event->tfinger); break; case SDL_MULTIGESTURE: DebugTrace("Multigesture : touchId " << Event->mgesture.touchId << ", x " << Event->mgesture.x << ", y " << Event->mgesture.y << ", dTheta " << Event->mgesture.dTheta << ", dDist " << Event->mgesture.dDist << ", numFingers " << Event->mgesture.numFingers); break; case SDL_JOYBALLMOTION: DebugTrace("Flick gesture detected, x: " << Event->jball.xrel << ", y: " << Event->jball.yrel); g_engine->Scroll(Event->jball.xrel, Event->jball.yrel); break; } }