00001
00002
00004
00005 #if !defined(AFX_PROPERTYPAGE_H__5962A360_EB4B_40E9_AC2E_44BB25F54467__INCLUDED_)
00006 #define AFX_PROPERTYPAGE_H__5962A360_EB4B_40E9_AC2E_44BB25F54467__INCLUDED_
00007
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011 #include <abuse/abuse.h>
00012 #include <abuse/Init.h>
00013 #include <string>
00014 #include "utils.h"
00015 #include "resource.h"
00016
00017 class PropertyPage: public virtual VirtBase
00018 {
00019 public:
00020 PropertyPage(UINT dlgId,DWORD dwFlags=PSP_DEFAULT,const Init& i=Init());
00021 virtual ~PropertyPage();
00022 operator HPROPSHEETPAGE()const{return m_hPsp;}
00023 operator HWND()const{return m_hWnd;}
00024 virtual void addPage(std::list<PropertyPage*>& lst){};
00025 protected:
00026 virtual bool canConfirm(std::string& errormsg)
00027 {
00028 return TRUE;
00029 }
00030 static BOOL CALLBACK PPProc(HWND hWnd,UINT uMsg,WPARAM wP,LPARAM lP);
00031 virtual BOOL PropPageProc(UINT uMsg,WPARAM wP,LPARAM lP)=0;
00032 void ctor();
00033 HPROPSHEETPAGE m_hPsp;
00034 HWND m_hWnd;
00035 PROPSHEETPAGE m_psp;
00036 private:
00037 BOOL privatePropPageProc(UINT uMsg,WPARAM wP,LPARAM lP);
00038 };
00039
00040 #endif // !defined(AFX_PROPERTYPAGE_H__5962A360_EB4B_40E9_AC2E_44BB25F54467__INCLUDED_)