191 lines
5.6 KiB
C++
191 lines
5.6 KiB
C++
//------------------------------------------------------------------------------
|
|
// File: Dialogs.h
|
|
//
|
|
// Desc: This file contains the header information for the various dialog
|
|
// wrapper classes we use.
|
|
//
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//------------------------------------------------------------------------------
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CAboutDlg
|
|
// Desc: This class is a wrapper for the About Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CAboutDlg
|
|
{
|
|
public:
|
|
static BOOL CALLBACK AboutDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CAboutDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CAboutDlg();
|
|
|
|
private:
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CSPLangDlg
|
|
// Desc: This class is a wrapper for the Subpicture Language Selection Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CSPLangDlg
|
|
{
|
|
public:
|
|
static BOOL CALLBACK SPDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CSPLangDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CSPLangDlg();
|
|
|
|
private:
|
|
bool GetSPLang(ULONG ulStream, TCHAR * buffer, int iBufLen);
|
|
int MakeSPStreamList(HWND hDlg, int iListID);
|
|
|
|
ULONG m_ulSPStream; // the current SP stream
|
|
BOOL m_bSPOn; // the state of the SP stream (on/off) - we use BOOL instead of bool because
|
|
// this is what GetCurrentSubpicture returns to us
|
|
ULONG m_ulNumLang; // the number of streams available
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CAudioLangDlg
|
|
// Desc: This class is a wrapper for the Audio Language Selection Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CAudioLangDlg
|
|
{
|
|
public:
|
|
static BOOL CALLBACK AudioDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CAudioLangDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CAudioLangDlg();
|
|
|
|
private:
|
|
bool GetAudioLang(ULONG ulStream, TCHAR * buffer, int iBufLen);
|
|
int MakeAudioStreamList(HWND hDlg, int iListID);
|
|
|
|
ULONG m_ulAudioStream; // the current Audio stream
|
|
ULONG m_ulNumLang; // the number of streams available
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CAngleDlg
|
|
// Desc: This class is a wrapper for the Angle Selection Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CAngleDlg
|
|
{
|
|
public:
|
|
static BOOL CALLBACK AngleDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CAngleDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CAngleDlg();
|
|
|
|
private:
|
|
int MakeAngleList(HWND hDlg, int iListID);
|
|
|
|
ULONG m_ulAngle; // the current Angle
|
|
ULONG m_ulNumAngle; // the number of angles available
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CChapterDlg
|
|
// Desc: This class is a wrapper for the Chapter Selection Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CChapterDlg
|
|
{
|
|
public:
|
|
ULONG GetChapter() { return m_ulChapter; }
|
|
static BOOL CALLBACK ChapterDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CChapterDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CChapterDlg();
|
|
|
|
private:
|
|
ULONG m_ulChapter; // the chosen Chapter
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CTitleDlg
|
|
// Desc: This class is a wrapper for the Title Selection Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CTitleDlg
|
|
{
|
|
public:
|
|
ULONG GetChapter() { return m_ulChapter; }
|
|
ULONG GetTitle() { return m_ulTitle; }
|
|
static BOOL CALLBACK TitleDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CTitleDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CTitleDlg();
|
|
|
|
private:
|
|
ULONG m_ulChapter; // the chosen Chapter
|
|
ULONG m_ulTitle; // the chosen Title
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CTimeDlg
|
|
// Desc: This class is a wrapper for the Time Selection Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CTimeDlg
|
|
{
|
|
public:
|
|
DVD_HMSF_TIMECODE GetTime() { return m_Time; }
|
|
void SetTime(DVD_HMSF_TIMECODE time) { m_Time = time; }
|
|
static BOOL CALLBACK TimeDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CTimeDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CTimeDlg();
|
|
|
|
private:
|
|
DVD_HMSF_TIMECODE m_Time; // the chosen time
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Name: class CKaraokeDlg
|
|
// Desc: This class is a wrapper for the Karaoke Mixing Dialog
|
|
//------------------------------------------------------------------------------
|
|
|
|
class CKaraokeDlg
|
|
{
|
|
public:
|
|
static BOOL CALLBACK KaraokeDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
|
bool DoModal();
|
|
CKaraokeDlg(HINSTANCE hInstance, HWND hWnd);
|
|
virtual ~CKaraokeDlg();
|
|
|
|
private:
|
|
const TCHAR * m_pszChannel2;
|
|
const TCHAR * m_pszChannel3;
|
|
const TCHAR * m_pszChannel4;
|
|
HINSTANCE m_hInstance;
|
|
HWND m_hWnd;
|
|
};
|
|
|
|
|