#ifndef UNPAGE_H #define UNPAGE_H class CUsernamePageBase { protected: CUsernamePageBase(CUserInfo* pUserInfo): m_pUserInfo(pUserInfo) {} protected: // Message handlers BOOL OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam); protected: // Data CUserInfo* m_pUserInfo; }; class CUsernameWizardPage: public CPropertyPage, public CUsernamePageBase { public: CUsernameWizardPage(CUserInfo* pUserInfo): CUsernamePageBase(pUserInfo) {} protected: // Message handlers virtual INT_PTR DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL OnNotify(HWND hwnd, int idCtrl, LPNMHDR pnmh); BOOL OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify); private: // Functions void SetWizardButtons(HWND hwnd, HWND hwndPropSheet); }; class CUsernamePropertyPage: public CPropertyPage, public CUsernamePageBase { public: CUsernamePropertyPage(CUserInfo* pUserInfo): CUsernamePageBase(pUserInfo) {} protected: // Message handlers virtual INT_PTR DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL OnNotify(HWND hwnd, int idCtrl, LPNMHDR pnmh); BOOL OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify); }; #endif //!UNPAGE_H