60 lines
1.2 KiB
C++
60 lines
1.2 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
//=============================================================================
|
|
|
|
#ifndef SCENEPREVIEWDLG_H
|
|
#define SCENEPREVIEWDLG_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
|
|
class CChoreoScene;
|
|
|
|
|
|
class CScenePreviewDlg : public CDialog
|
|
{
|
|
// Construction
|
|
public:
|
|
// Note: the dialog now owns the scene and it'll delete it when it goes away.
|
|
CScenePreviewDlg( CChoreoScene *pScene, const char *pSceneFilename, CWnd* pParent = NULL ); // standard constructor
|
|
virtual ~CScenePreviewDlg();
|
|
|
|
// Dialog Data
|
|
//{{AFX_DATA(CSoundBrowser)
|
|
DECLARE_MESSAGE_MAP()
|
|
enum { IDD = IDD_SCENE_PREVIEW };
|
|
|
|
|
|
protected:
|
|
BOOL OnInitDialog();
|
|
virtual LRESULT DefWindowProc( UINT message, WPARAM wParam, LPARAM lParam );
|
|
virtual void OnCancel(void);
|
|
|
|
|
|
private:
|
|
static DWORD WINAPI StaticIdleThread( LPVOID pParameter );
|
|
DWORD IdleThread();
|
|
|
|
void OnIdle();
|
|
void EndThread();
|
|
|
|
|
|
private:
|
|
CChoreoScene *m_pScene;
|
|
|
|
HANDLE m_hExitThreadEvent;
|
|
HANDLE m_hIdleEventHandledEvent;
|
|
|
|
HANDLE m_hIdleThread;
|
|
|
|
int m_iLastEventPlayed; // Last sound event we handled.
|
|
double m_flStartTime; // When we started playing the scene.
|
|
char m_SceneFilename[MAX_PATH];
|
|
};
|
|
|
|
|
|
#endif // SCENEPREVIEWDLG_H
|