Leaked source code of windows server 2003
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.
|
|
// WarningDlg.cpp : implementation file
//
#include "stdafx.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__; #endif
/////////////////////////////////////////////////////////////////////////////
// CWarningDlg dialog
CWarningDlg::CWarningDlg(UINT nWarningIds, UINT nTitleIds /*= 0*/, CWnd* pParent /*=NULL*/) : CDialog(CWarningDlg::IDD, pParent), m_nWarningIds( nWarningIds ), m_nTitleIds( nTitleIds ) { //{{AFX_DATA_INIT(CWarningDlg)
//}}AFX_DATA_INIT
m_sWarning = _T(""); m_bEnableShowAgainCheckbox = FALSE; // default is hide checkbox
m_bDoNotShowAgainCheck = FALSE; // default is show checkbox again
}
CWarningDlg::CWarningDlg(LPCTSTR szWarningMessage, UINT nTitleIds /*= 0*/, CWnd* pParent /*=NULL*/) : CDialog(CWarningDlg::IDD, pParent), m_nWarningIds( 0 ), m_nTitleIds( nTitleIds ) { //{{AFX_DATA_INIT(CWarningDlg)
m_sWarning = _T(""); //}}AFX_DATA_INIT
m_bEnableShowAgainCheckbox = FALSE; // default is hide checkbox
m_bDoNotShowAgainCheck = FALSE; // default is show checkbox again
m_sWarning = szWarningMessage; }
void CWarningDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CWarningDlg)
DDX_Control(pDX, IDC_EDIT_EXPLANATION, m_editWarning); //}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CWarningDlg, CDialog) //{{AFX_MSG_MAP(CWarningDlg)
ON_BN_CLICKED(IDYES, OnYes) ON_BN_CLICKED(IDNO, OnNo) //}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CWarningDlg Operations
void CWarningDlg::EnableDoNotShowAgainCheck( BOOL bEnable ) { m_bEnableShowAgainCheckbox = bEnable; }
BOOL CWarningDlg::GetDoNotShowAgainCheck() { if (m_bEnableShowAgainCheckbox) return m_bDoNotShowAgainCheck; return FALSE; }
/////////////////////////////////////////////////////////////////////////////
// CWarningDlg message handlers
BOOL CWarningDlg::OnInitDialog() { // Load the warning string for display in the dialog
// if m_nWarningIds == 0, that means we already load
// the message string in constructor
if (m_nWarningIds) { m_sWarning.FormatMessage( m_nWarningIds ); } GetDlgItem(IDC_EDIT_EXPLANATION)->SetWindowText(m_sWarning); // Load the title, if any
if (m_nTitleIds) { try { m_sTitle.LoadString( m_nTitleIds ); } catch( CMemoryException *pe ) { ASSERT( FALSE ); pe->Delete(); m_sTitle.Empty(); } if (!m_sTitle.IsEmpty()) { SetWindowText( m_sTitle ); } } // Determine whether the "Do not show this again" checkbox should be displayed.
SAFE_SHOWWINDOW( IDC_CHECKNOTAGAIN, m_bEnableShowAgainCheckbox ? SW_SHOW : SW_HIDE ); CDialog::OnInitDialog(); // default to NO since user is doing something questionable
// which requires us to ask if its really OK.
GetDlgItem(IDNO)->SetFocus(); SetDefID( IDNO ); return 0; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CWarningDlg::OnYes() { if (m_bEnableShowAgainCheckbox) { if (1 == ((CButton*)GetDlgItem( IDC_CHECKNOTAGAIN ))->GetCheck()) m_bDoNotShowAgainCheck = TRUE; else m_bDoNotShowAgainCheck = FALSE; } EndDialog( IDYES ); }
void CWarningDlg::OnNo() { if (m_bEnableShowAgainCheckbox) { if (1 == ((CButton*)GetDlgItem( IDC_CHECKNOTAGAIN ))->GetCheck()) m_bDoNotShowAgainCheck = TRUE; else m_bDoNotShowAgainCheck = FALSE; } EndDialog( IDNO ); }
|