#if !defined(__ParamDlg__) #define __ParamDlg__ // make same order, enum PAGE_TYPE { PT_NONE = 0, PT_ADD_SERVER, PT_STATUS, PT_VIDEO_SETTINGS, PT_MPEG_SETTINGS, PT_AUDIO_SETTINGS, PT_AUDIO_OUT_SETTINGS, PT_SERIAL_PORT, PT_CONTROL_PTZ, PT_EVENT_SETTINGS, PT_MD_SETTINGS, PT_OSD_SETTINGS, PT_NETWORK, PT_QOS, PT_SYSTEM_MGR, PT_SYSTEM_INFO, PT_TRAFFIC, PT_RACK_INFO, PT_USER_MGR, PT_MULTICAST, PT_DDNS, PT_ENCRYPTION, PT_MISC_SETTINGS, PT_EXT_CMD, PT_ARCHIVE_DATA, }; union TREE_PARAM{ LPARAM lparam; struct{ BYTE pagetype; BYTE extra; BYTE board; BYTE channel; }; }; class CMgrNVE; class CConnectionManager; class CParamDlg:public CDialog { public: CParamDlg(UINT nIDTemplate, CWnd* pParentWnd,CMgrNVE* pMgrNVE,CConnectionManager* pConnMgr): CDialog(nIDTemplate, pParentWnd) { m_pMgrNVE=pMgrNVE; m_pConnection = pConnMgr; m_local_param.lparam=NULL; } BOOL CreateWithDefaultTempalte(CWnd* pParentWnd){return Create(m_lpszTemplateName,pParentWnd);} BOOL CreateWithDefaultTempalteHWND(HWND hParentWnd){return Create(m_lpszTemplateName,FromHandle(hParentWnd));} virtual ~CParamDlg(){} virtual BOOL SaveSetting(){return TRUE;} virtual BOOL ResetSetting(){return TRUE;} virtual BOOL UpdateSetting(){return TRUE;} virtual BOOL DestroyWindow() { return CDialog::DestroyWindow(); } void SetParam(LPARAM param){m_local_param.lparam=param;} DWORD GetDlgType() { return m_local_param.pagetype; } virtual BOOL OnSensor(void* pState) {return TRUE;} virtual BOOL OnVStatus(void* pState) {return TRUE;} virtual BOOL OnChInfo(void* pState) {return TRUE;} virtual BOOL IsRestart() { return TRUE; } CConnectionManager *GetConnMgr() { return m_pConnection; } CMgrNVE *GetMgrNVE() { return m_pMgrNVE; } protected: TREE_PARAM m_local_param; CMgrNVE* m_pMgrNVE; CConnectionManager* m_pConnection; }; #endif