//============================== // ResumeMovieComponent::OnEvent_Impl eMsgStatus ResumeMovieComponent::OnEvent_Impl( OvrGuiSys & guiSys, VrFrame const & vrFrame, VRMenuObject * self, VRMenuEvent const & event ) { switch( event.EventType ) { case VRMENU_EVENT_FRAME_UPDATE: return Frame( guiSys, vrFrame, self, event ); case VRMENU_EVENT_FOCUS_GAINED: return FocusGained( guiSys, vrFrame, self, event ); case VRMENU_EVENT_FOCUS_LOST: return FocusLost( guiSys, vrFrame, self, event ); case VRMENU_EVENT_TOUCH_DOWN: if ( CallbackView != NULL ) { Sound.PlaySound( guiSys.GetApp(), "touch_down", 0.1 ); return MSG_STATUS_CONSUMED; } return MSG_STATUS_ALIVE; case VRMENU_EVENT_TOUCH_UP: if ( !( vrFrame.Input.buttonState & BUTTON_TOUCH_WAS_SWIPE ) && ( CallbackView != NULL ) ) { Sound.PlaySound( guiSys.GetApp(), "touch_up", 0.1 ); CallbackView->ResumeChoice( ItemNum ); return MSG_STATUS_CONSUMED; } return MSG_STATUS_ALIVE; default: OVR_ASSERT( !"Event flags mismatch!" ); return MSG_STATUS_ALIVE; } }
//============================== // MovieSelectionComponent::OnEvent_Impl eMsgStatus MovieSelectionComponent::OnEvent_Impl( App * app, VrFrame const & vrFrame, OvrVRMenuMgr & menuMgr, VRMenuObject * self, VRMenuEvent const & event ) { switch( event.EventType ) { case VRMENU_EVENT_FRAME_UPDATE: return Frame( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_FOCUS_GAINED: return FocusGained( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_FOCUS_LOST: return FocusLost( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_TOUCH_DOWN: Sound.PlaySound( app, "touch_down", 0.1 ); return MSG_STATUS_CONSUMED; case VRMENU_EVENT_TOUCH_UP: if ( !( vrFrame.Input.buttonState & BUTTON_TOUCH_WAS_SWIPE ) ) { Sound.PlaySound( app, "touch_up", 0.1 ); CallbackView->SelectMovie(); return MSG_STATUS_CONSUMED; } return MSG_STATUS_ALIVE; default: OVR_ASSERT( !"Event flags mismatch!" ); return MSG_STATUS_ALIVE; } }
void CComponent::ChangeFocus(bool gained, CComponent *pComp) { if(gained) { // s_pFocusComp = this; m_bFocus = true; FocusGained(pComp); } else { // s_pFocusComp = 0; m_bFocus = false; FocusLost(pComp); } }
//============================== // OvrTextFade_Component::OnEvent_Impl eMsgStatus OvrTextFade_Component::OnEvent_Impl( App * app, VrFrame const & vrFrame, OvrVRMenuMgr & menuMgr, VRMenuObject * self, VRMenuEvent const & event ) { OVR_ASSERT( HandlesEvent( VRMenuEventFlags_t( event.EventType ) ) ); switch ( event.EventType ) { case VRMENU_EVENT_FRAME_UPDATE: return Frame( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_FOCUS_GAINED: return FocusGained( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_FOCUS_LOST: return FocusLost( app, vrFrame, menuMgr, self, event ); default: OVR_ASSERT( !"Event flags mismatch!" ); // the constructor is specifying a flag that's not handled return MSG_STATUS_ALIVE; } }
//============================== // OvrDefaultComponent::OnEvent_Impl eMsgStatus OvrDefaultComponent::OnEvent_Impl( App * app, VrFrame const & vrFrame, OvrVRMenuMgr & menuMgr, VRMenuObject * self, VRMenuEvent const & event ) { switch( event.EventType ) { case VRMENU_EVENT_FRAME_UPDATE: return Frame( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_FOCUS_GAINED: return FocusGained( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_FOCUS_LOST: return FocusLost( app, vrFrame, menuMgr, self, event ); case VRMENU_EVENT_TOUCH_DOWN: DownSoundLimiter.PlaySound( app, "sv_panel_touch_down", 0.1 ); return MSG_STATUS_ALIVE; case VRMENU_EVENT_TOUCH_UP: UpSoundLimiter.PlaySound( app, "sv_panel_touch_up", 0.1 ); return MSG_STATUS_ALIVE; default: OVR_ASSERT( !"Event flags mismatch!" ); return MSG_STATUS_ALIVE; } }