예제 #1
0
파일: ClipEditor.cpp 프로젝트: 2asoft/xray
void TClipMaker::OnFrame()
{
	if (m_RTFlags.is(flRT_UpdateClips))
    	RealUpdateClips();
	if (m_RTFlags.is(flRT_RepaintClips))
    	RealRepaintClips();
    if (m_RTFlags.is(flRT_UpdateProperties))
    	RealUpdateProperties();
    if (m_RTFlags.is(flRT_Playing)){
    	// playing
        VERIFY(play_clip<clips.size());
        if (m_CurrentPlayTime>(clips[play_clip]->RunTime()+clips[play_clip]->Length())){
        	play_clip++;
            if (play_clip>=clips.size()){ 
			    if (m_RTFlags.is(flRT_PlayingLooped)){
    	        	play_clip=0;
                }else{
                	Stop();
                }
            }
		    if (m_RTFlags.is(flRT_Playing)) PlayAnimation(clips[play_clip]);
        }
		// play onframe
    	if (m_CurrentPlayTime>m_TotalLength) m_CurrentPlayTime-=m_TotalLength;
	    m_CurrentPlayTime+=Device.fTimeDelta;
        timeTrackBar->Position = m_CurrentPlayTime*10000;
        gtClip->Repaint();
    }
}
예제 #2
0
void CShaderTools::OnFrame()
{
	if (m_Flags.is(flRefreshList)) 
    	RealUpdateList();
	if (m_Flags.is(flRefreshProps)) 
    	RealUpdateProperties();
	Current()->OnFrame();
}
예제 #3
0
void __fastcall CLevelTools::OnFrame()
{
	Scene->OnFrame		(Device.fTimeDelta);
    EEditorState est 	= UI->GetEState();
    if ((est==esEditScene)||(est==esEditLibrary)||(est==esEditLightAnim)){
        if (!UI->IsMouseCaptured()){
            // если нужно изменить target выполняем после того как мышь освободится
            if(m_Flags.is(flChangeTarget)) 		RealSetTarget(iNeedTarget,iNeedSubTarget,false);
            // если нужно изменить action выполняем после того как мышь освободится
            if(m_Flags.is(flChangeAction)) 		RealSetAction(ETAction(iNeedAction));
        }
        if (m_Flags.is(flUpdateProperties)) 	RealUpdateProperties();
        if (m_Flags.is(flUpdateObjectList)) 	RealUpdateObjectList();
        if (est==esEditLightAnim) TfrmEditLightAnim::OnIdle();
    }
}
예제 #4
0
void CLevelTool::ShowProperties(LPCSTR focus_to_item)
{
    m_Props->ShowProperties	();
    RealUpdateProperties	();

	if(focus_to_item)
    	m_Props->SelectFolder	(focus_to_item);
    else
    {
    	if(pCurTool && pCurTool->ClassID!=OBJCLASS_DUMMY)
        {
           	LPCSTR cn = pCurTool->ClassDesc();
    		m_Props->SelectFolder	(cn);
        }
    }

    UI->RedrawScene			();
}