windows-nt/Source/XPSP1/NT/inetsrv/iis/ui/itools/isadmin/genpage.h
2020-09-26 16:20:57 +08:00

97 lines
2.3 KiB
C++

// genpage.h : header file
//
#ifndef _GEN_PAGE_
#define _GEN_PAGE_
#include "compsdef.h"
enum YES_NO_ENTRIES {
YESNO_NO,
YESNO_YES
};
// These are checkbox states
#define CHECKEDVALUE 1
#define UNCHECKEDVALUE 0
// These are our true/false values for the registry
#define TRUEVALUE 1
#define FALSEVALUE 0
// Since TRUEVALUE = CHECKEDVALUE and FALSEVALUE = UNCHECKEDVALUE, we don't really need this.
// This avoids dependency on that correlation
#define GETREGVALUEFROMCHECKBOX(p) ((p) == UNCHECKEDVALUE) ? FALSEVALUE : TRUEVALUE
#define GETCHECKBOXVALUEFROMREG(p) ((p) == FALSEVALUE) ? UNCHECKEDVALUE : CHECKEDVALUE
// Data Structure for numeric registry entries, all pages
typedef struct _NUM_REG_ENTRY {
LPTSTR strFieldName;
DWORD ulFieldValue;
DWORD ulMultipleFactor; //for entries where the use specifies MB, KB, minutes, etc.
DWORD ulDefaultValue;
BOOL bIsChanged;
} NUM_REG_ENTRY, *PNUM_REG_ENTRY;
typedef struct _STRING_REG_ENTRY {
LPTSTR strFieldName;
CString strFieldValue;
CString strDefaultValue;
BOOL bIsChanged;
} STRING_REG_ENTRY, *PSTRING_REG_ENTRY;
void AFXAPI DDX_TexttoHex(CDataExchange* pDX, int nIDC, DWORD& value);
/////////////////////////////////////////////////////////////////////////////
// CGenPage dialog
class CGenPage : public CPropertyPage
{
DECLARE_DYNCREATE(CGenPage)
// Construction
public:
CGenPage(UINT nIDTemplate, UINT nIDCaption = 0);
CGenPage(LPCTSTR lpszTemplateName, UINT nIDCaption = 0);
~CGenPage();
// Dialog Data
//{{AFX_DATA(CGenPage)
// enum { IDD = _UNKNOWN_RESOURCE_ID_ };
// NOTE - ClassWizard will add data members here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_DATA
/* PURE */ virtual void SaveInfo(void);
CRegKey *m_rkMainKey;
// Overrides
// ClassWizard generate virtual function overrides
//{{AFX_VIRTUAL(CGenPage)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CGenPage)
// NOTE: the ClassWizard will add member functions here
//}}AFX_MSG
BOOL m_bIsDirty;
BOOL m_bSetChanged;
void SaveNumericInfo(PNUM_REG_ENTRY lpbinNumEntries, int iNumEntries);
void SaveStringInfo(PSTRING_REG_ENTRY lpbinStringEntries, int iStringEntries);
DECLARE_MESSAGE_MAP()
};
#endif //_GEN_PAGE_