mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
3.3 KiB
148 lines
3.3 KiB
/**********************************************************************/
|
|
/** Microsoft Windows/NT **/
|
|
/** Copyright(c) Microsoft Corp., 1995 **/
|
|
/**********************************************************************/
|
|
|
|
/*
|
|
dhcppoli.cpp
|
|
Policy dialog
|
|
|
|
FILE HISTORY:
|
|
|
|
*/
|
|
|
|
#include "stdafx.h"
|
|
#include "dhcppoli.h"
|
|
|
|
#ifdef _DEBUG
|
|
#undef THIS_FILE
|
|
static char BASED_CODE THIS_FILE[] = __FILE__;
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CDhcpPolicyDlg dialog
|
|
|
|
CDhcpPolicyDlg::CDhcpPolicyDlg(
|
|
CDhcpScope * pdhcScope,
|
|
CWnd* pParent
|
|
)
|
|
: CDialog(CDhcpPolicyDlg::IDD, pParent),
|
|
m_p_scope( pdhcScope )
|
|
{
|
|
//{{AFX_DATA_INIT(CDhcpPolicyDlg)
|
|
// NOTE: the ClassWizard will add member initialization here
|
|
//}}AFX_DATA_INIT
|
|
}
|
|
|
|
void
|
|
CDhcpPolicyDlg::DoDataExchange(
|
|
CDataExchange* pDX
|
|
)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(CDhcpPolicyDlg)
|
|
DDX_Control(pDX, IDC_EDIT_HOST_RESERVE, m_edit_reserve);
|
|
DDX_Control(pDX, IDC_EDIT_CLUSTER_SIZE, m_edit_cluster_size);
|
|
DDX_Control(pDX, IDC_STATIC_SCOPE_NAME, m_static_scope_name);
|
|
//}}AFX_DATA_MAP
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CDhcpPolicyDlg, CDialog)
|
|
//{{AFX_MSG_MAP(CDhcpPolicyDlg)
|
|
ON_WM_CLOSE()
|
|
ON_EN_UPDATE(IDC_EDIT_CLUSTER_SIZE, OnUpdateEditClusterSize)
|
|
ON_EN_UPDATE(IDC_EDIT_HOST_RESERVE, OnUpdateEditHostReserve)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CDhcpPolicyDlg message handlers
|
|
|
|
BOOL
|
|
CDhcpPolicyDlg::OnInitDialog()
|
|
{
|
|
DWORD dwClusterSize ;
|
|
DWORD dwPreallocate ;
|
|
CStrNumer strNum ;
|
|
|
|
CDialog::OnInitDialog();
|
|
|
|
ASSERT( m_p_scope != NULL ) ;
|
|
if ( m_p_scope == NULL )
|
|
{
|
|
EndDialog( -1 ) ;
|
|
return TRUE ;
|
|
}
|
|
|
|
//
|
|
// Fill the controls
|
|
//
|
|
m_static_scope_name.SetWindowText( m_p_scope->QueryName() ) ;
|
|
|
|
m_p_scope->QueryAllocationPolicy( & dwClusterSize, & dwPreallocate ) ;
|
|
|
|
strNum = dwClusterSize ;
|
|
m_edit_cluster_size.SetWindowText( strNum ) ;
|
|
m_edit_cluster_size.SetModify( FALSE ) ;
|
|
|
|
strNum = dwPreallocate ;
|
|
m_edit_reserve.SetWindowText( strNum ) ;
|
|
m_edit_reserve.SetModify( FALSE ) ;
|
|
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
}
|
|
|
|
void
|
|
CDhcpPolicyDlg::OnClose()
|
|
{
|
|
CDialog::OnClose();
|
|
}
|
|
|
|
void
|
|
CDhcpPolicyDlg::OnOK()
|
|
{
|
|
if ( ! (m_edit_reserve.GetModify()
|
|
|| m_edit_cluster_size.GetModify()) )
|
|
{
|
|
CDialog::OnOK();
|
|
return ;
|
|
}
|
|
|
|
CString strResv, strCluster ;
|
|
CStrNumer strNum ;
|
|
LONG err = ERROR_INVALID_PARAMETER ;
|
|
DWORD dwPreallocate ;
|
|
DWORD dwClusterSize ;
|
|
|
|
|
|
if (!FGetCtrlDWordValue(m_edit_reserve.m_hWnd, &dwPreallocate, 0, (DWORD)-1))
|
|
return;
|
|
if (!FGetCtrlDWordValue(m_edit_cluster_size.m_hWnd, &dwClusterSize, 0, (DWORD)-1))
|
|
return;
|
|
ASSERT(m_p_scope);
|
|
err = m_p_scope->SetAllocationPolicy( dwClusterSize, dwPreallocate ) ;
|
|
if ( err )
|
|
{
|
|
theApp.MessageBox( err ) ;
|
|
}
|
|
else
|
|
{
|
|
CDialog::OnOK();
|
|
}
|
|
}
|
|
|
|
void
|
|
CDhcpPolicyDlg::OnCancel()
|
|
{
|
|
CDialog::OnCancel();
|
|
}
|
|
|
|
void
|
|
CDhcpPolicyDlg::OnUpdateEditClusterSize()
|
|
{
|
|
}
|
|
|
|
void
|
|
CDhcpPolicyDlg::OnUpdateEditHostReserve()
|
|
{
|
|
}
|