//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : CProtectSetDlg类定义 // = Version : ver2.0 // = Author : xlc // = CreateDate : 2002-09-09 // = Description: // = Maintainers: // //-----------------------------------------------------------------------------+ #include "StdAfx.h" #include "CProtectSetDlg.h" #include "TDbProtectEntity.h" #include "resource.h" CProtectSetDlg::CProtectSetDlg(TDbProtectEntity *pEnt) : CDialog(IDD_PROTECT_SET),m_pEnt(pEnt) { m_bNoExplode = _tcscmp(pEnt->GetCode(),_T("")) != 0; m_bNoPrint = pEnt->IsProtectPrint(); m_bNewCode = FALSE; } void CProtectSetDlg::DoDataExchange(CDataExchange*pDX) { CDialog::DoDataExchange(pDX); DDX_Check(pDX,IDC_NO_EXPLODE,m_bNoExplode); DDX_Check(pDX,IDC_NO_PRINT,m_bNoPrint); DDX_Check(pDX,IDC_NEW_CODE,m_bNewCode); DDX_Text(pDX,IDC_CODE,m_sCode); DDX_Text(pDX,IDC_CODE2,m_sCode2); GetDlgItem(IDC_NO_PRINT)->EnableWindow(m_bNoExplode); GetDlgItem(IDC_NEW_CODE)->EnableWindow(m_bNoExplode); GetDlgItem(IDC_CODE)->EnableWindow(m_bNoExplode && m_bNewCode); GetDlgItem(IDC_CODE2)->EnableWindow(m_bNoExplode && m_bNewCode); GetDlgItem(IDC_STATIC_CODE2)->EnableWindow(m_bNoExplode && m_bNewCode); if (!m_bNoExplode) { m_bNoPrint = FALSE; m_bNewCode = FALSE; m_sCode = _T(""); m_sCode2 = _T(""); } else if (_tcscmp(m_pEnt->GetCode(),_T("")) == 0) { m_bNewCode = TRUE; } } BEGIN_MESSAGE_MAP(CProtectSetDlg,CDialog) ON_BN_CLICKED(IDC_NO_EXPLODE,OnCheck) ON_BN_CLICKED(IDC_NEW_CODE,OnCheck) END_MESSAGE_MAP() void CProtectSetDlg::OnCheck() { UpdateData(TRUE); UpdateData(FALSE); } void CProtectSetDlg::OnOK() { UpdateData(); if (m_bNewCode) { if(_tcscmp(m_sCode,_T("")) == 0) { MessageBox(_T("密码不能为空!")); return; } if (m_sCode != m_sCode2) { MessageBox(_T("前后输入的密码不相同!")); return; } m_pEnt->SetCode(m_sCode); m_pEnt->SetCode1(_T("")); } if (m_bNoExplode && _tcscmp(m_pEnt->GetCode(),_T("")) != 0 && m_bNoPrint) { m_pEnt->SetProtectPrint(true); } else { m_pEnt->SetProtectPrint(false); } CDialog::OnOK(); }