92 lines
2.6 KiB
C
92 lines
2.6 KiB
C
|
//
|
||
|
//
|
||
|
//
|
||
|
#ifndef _ASP_MAIN_H
|
||
|
#define _ASP_MAIN_H
|
||
|
|
||
|
#include "resource.h"
|
||
|
#include "ExchControls.h"
|
||
|
#include "PropSheet.h"
|
||
|
|
||
|
#define SESSION_TIMEOUT_MIN 1
|
||
|
#define SESSION_TIMEOUT_MAX 2000000000
|
||
|
#define SCRIPT_TIMEOUT_MIN 1
|
||
|
#define SCRIPT_TIMEOUT_MAX 2000000000
|
||
|
|
||
|
class CAspMainPage :
|
||
|
public WTL::CPropertyPageImpl<CAspMainPage>,
|
||
|
public WTL::CWinDataExchange<CAspMainPage>
|
||
|
{
|
||
|
typedef CPropertyPageImpl<CAspMainPage> baseClass;
|
||
|
|
||
|
public:
|
||
|
CAspMainPage(CAppData * pData)
|
||
|
{
|
||
|
m_pData = pData;
|
||
|
}
|
||
|
~CAspMainPage()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
enum {IDD = IDD_ASPMAIN};
|
||
|
|
||
|
BEGIN_MSG_MAP_EX(CAspMainPage)
|
||
|
MSG_WM_INITDIALOG(OnInitDialog)
|
||
|
COMMAND_HANDLER_EX(IDC_ENABLE_SESSION, BN_CLICKED, OnEnableSession)
|
||
|
COMMAND_HANDLER_EX(IDC_ENABLE_BUFFERING, BN_CLICKED, OnChangeControl)
|
||
|
COMMAND_HANDLER_EX(IDC_ENABLE_PARENTS, BN_CLICKED, OnChangeControl)
|
||
|
COMMAND_HANDLER_EX(IDC_SESSION_TIMEOUT, EN_CHANGE, OnChangeControl)
|
||
|
COMMAND_HANDLER_EX(IDC_SCRIPT_TIMEOUT, EN_CHANGE, OnChangeControl)
|
||
|
COMMAND_HANDLER_EX(IDC_LANGUAGES, EN_CHANGE, OnChangeControl)
|
||
|
CHAIN_MSG_MAP(baseClass)
|
||
|
END_MSG_MAP()
|
||
|
|
||
|
BEGIN_DDX_MAP(CAspMainPage)
|
||
|
DDX_CHECK(IDC_ENABLE_SESSION, m_pData->m_EnableSession)
|
||
|
DDX_CHECK(IDC_ENABLE_BUFFERING, m_pData->m_EnableBuffering)
|
||
|
DDX_CHECK(IDC_ENABLE_PARENTS, m_pData->m_EnableParents)
|
||
|
if (m_pData->m_EnableSession)
|
||
|
{
|
||
|
DDX_INT_RANGE(IDC_SESSION_TIMEOUT,
|
||
|
m_pData->m_SessionTimeout, SESSION_TIMEOUT_MIN, SESSION_TIMEOUT_MAX)
|
||
|
}
|
||
|
DDX_TEXT(IDC_LANGUAGES, m_pData->m_Languages)
|
||
|
DDX_INT_RANGE(IDC_SCRIPT_TIMEOUT, m_pData->m_ScriptTimeout, SCRIPT_TIMEOUT_MIN, SCRIPT_TIMEOUT_MAX)
|
||
|
|
||
|
DDX_CONTROL(IDC_LANGUAGES, m_LanguagesCtrl)
|
||
|
DDX_CONTROL(IDC_TIMEOUT_SPIN, m_TimeoutSpin)
|
||
|
DDX_CONTROL(IDC_ASPTIMEOUT_SPIN, m_AspTimeoutSpin)
|
||
|
END_DDX_MAP()
|
||
|
|
||
|
LRESULT OnInitDialog(HWND hDlg, LPARAM lParam);
|
||
|
void OnEnableSession(UINT nCode, UINT nID, HWND hWnd);
|
||
|
void OnChangeControl(UINT nCode, UINT nID, HWND hWnd)
|
||
|
{
|
||
|
if (nCode == EN_CHANGE)
|
||
|
{
|
||
|
TCHAR buf[MAX_PATH];
|
||
|
UINT len = GetDlgItemText(nID, buf, MAX_PATH);
|
||
|
BOOL bEnable = (len != 0);
|
||
|
// Disable OK and Apply buttons
|
||
|
::EnableWindow(::GetDlgItem(GetParent(), IDOK), bEnable);
|
||
|
if (!bEnable)
|
||
|
{
|
||
|
SET_MODIFIED(FALSE);
|
||
|
return;
|
||
|
}
|
||
|
}
|
||
|
SET_MODIFIED(TRUE);
|
||
|
}
|
||
|
BOOL OnKillActive();
|
||
|
void OnDataValidateError(UINT nCtrlID, BOOL bSave, _XData& data);
|
||
|
void OnDataExchangeError(UINT nCtrlID, BOOL bSave);
|
||
|
void OnHelp();
|
||
|
|
||
|
protected:
|
||
|
CAppData * m_pData;
|
||
|
CEditExch m_LanguagesCtrl;
|
||
|
CUpDownCtrlExch m_TimeoutSpin;
|
||
|
CUpDownCtrlExch m_AspTimeoutSpin;
|
||
|
};
|
||
|
|
||
|
#endif //_ASP_MAIN_H
|