// ----------------------------------------------------------------------------- // CSvgTimeContainer::UserSeek // Called to handle user/client generated seek event // ----------------------------------------------------------------------------- // void CSvgTimeContainer::UserSeek( TInt aTime ) // Time in msecs to seek { if ( iTimer ) { //if ( iOwnerDoc && iCurrentTime != aTime ) if ( iOwnerDoc) { iCurrentTime = aTime; iCurrentTick.iParentTcTick = aTime; iCurrentTick.iRealTimeTick = aTime; TSvgTimerEvent timeEvent( iCurrentTime ); iOwnerDoc->Reset( &timeEvent ); } iTimer->SetSeekTime( aTime ); } // Need to send user resume events to timed entities SetUserState(ESvgUserRunning); TInt lTimedEntityListCnt = iTcTimedEntities.Count(); for ( TInt lItemIndex = lTimedEntityListCnt - 1; lItemIndex >= 0 ; lItemIndex-- ) { UserResumeElement( &iTcTimedEntities[ lItemIndex ] ); } UserResumeElement(&iLrteListItem); }
// ----------------------------------------------------------------------------- // CSvgTimeContainer::UserResume // Called to handle user/client generated resume event // ----------------------------------------------------------------------------- // void CSvgTimeContainer::UserResume( TInt32 aTime ) { SetUserState(ESvgUserRunning); if ( iTimer ) { iTimer->SVGResume( aTime ); } /* UserResume() { For all timed entities { UserResumeElement() } } */ TInt lTimedEntityListCnt = iTcTimedEntities.Count(); for ( TInt lItemIndex = lTimedEntityListCnt - 1; lItemIndex >= 0 ; lItemIndex-- ) { UserResumeElement(&iTcTimedEntities[ lItemIndex ]); } UserResumeElement(&iLrteListItem); }
// ----------------------------------------------------------------------------- // void CSvgTimeContainer::UserStop() { SetUserState(ESvgUserStopped); // Cancel the timer if ( iTimer ) { iTimer->SVGStop(); } TInt lTimedEntityListCnt = iTcTimedEntities.Count(); for ( TInt lItemIndex = lTimedEntityListCnt - 1; lItemIndex >= 0 ; lItemIndex-- ) { UserStopElement(&iTcTimedEntities[lItemIndex]); } UserStopElement(&iLrteListItem); }
void CSvgTimeContainer::UserStopElement(TSvgTimedEntityListItem* aTimedEntity) { aTimedEntity->iTimedEntity->StopTimedEntity(); aTimedEntity->iIsSyncPaused = EFalse; SetUserState(ESvgUserStopped); if(aTimedEntity->iTimedEntity->ObjectType() == ESvgMediaAnimationElement) { CSvgTimeContainer* AnimTimeContainer = aTimedEntity->iTimedEntity->GetChildTimeContainer(); if(AnimTimeContainer) { AnimTimeContainer->UserStop(); } } }
HRESULT CToolMgr::InitToolMgr(HWND hWnd) { m_hWnd = hWnd; m_Log.AddLog(LOG_TYPE_TOOLWORK, "서버 매니저 툴 초기화 작업 시작..."); m_WinSockMgr.InitWinSockMgr(); m_DialogMgr.InitDialogMgr(); m_Log.AddLog(LOG_TYPE_TOOLWORK, "서버 매니저 툴 초기화 작업 끝..."); m_bConnected = false; SetLoginID(UNKNOWNED_USER); SetUserState(USER_STATE_OFFLINE); return S_OK; }