00001
00002
00003
00004
00005
00006
00007
00008
00009
#ifndef __DIALOGH
00010
#define __DIALOGH
00011
00012 class CDlg
00013 {
00014
public:
00015
void SetInstance(HINSTANCE
hInst);
00016
void SetDlgID(
UINT id);
00017
void Destroy();
00018
CDlg(
int DlgID, HWND hWndParent, HINSTANCE
hInst);
00019
~CDlg();
00020
00021 HWND
GetWindow()
const {
return m_hDlg; }
00022 HWND
GetParent()
const {
return ::GetParent(
m_hDlg); }
00023 HWND
GetDlgItem(
int iD)
const {
return ::GetDlgItem(
m_hDlg,iD); }
00024 HINSTANCE
GetInstance()
const {
return m_Inst;}
00025 BOOL EndDialog(
int iRet) {
return ::EndDialog(
m_hDlg,iRet); }
00026
00027
00028
int Do();
00029
virtual BOOL CALLBACK DlgProc(HWND hDlg, UINT uMessage, WPARAM wParam, LPARAM lParam);
00030
virtual int DoCommand(WORD wCmdID,WORD hHow);
00031
virtual void OnInit();
00032
virtual int DoNotify(NMHDR * pHdr);
00033 HWND
CreateModeless();
00034
00035
private:
00036 BOOL m_bCreatedModeless;
00037 int m_DlgID;
00038 HWND
m_hDlg;
00039 HWND
m_hParent;
00040 HINSTANCE
m_Inst;
00041
00042
protected:
00043 void SetWindow(HWND hDlg) {
m_hDlg=hDlg; }
00044
static BOOL CALLBACK BaseDlgProc(HWND hDlg, UINT uMessage, WPARAM wParam, LPARAM lParam);
00045 };
00046
00047
00048
#endif