// FreezeCellDlg.cpp : implementation file // #include "stdafx.h" #include "MSVC5conview.h" #include "FreezeCellDlg.h" #include "leadrastercontainercell.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CFreezeCellDlg dialog CFreezeCellDlg::CFreezeCellDlg(CWnd* pParent /*=NULL*/) : CDialog(CFreezeCellDlg::IDD, pParent) { //{{AFX_DATA_INIT(CFreezeCellDlg) m_uCellIndex = 0; m_RadAppend = 0; //}}AFX_DATA_INIT } void CFreezeCellDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CFreezeCellDlg) DDX_Control(pDX, IDC_FREEZECELL_INDEX_EDT, m_edtCellIndex); DDX_Control(pDX, IDC_FREEZECELL_ACTION_COM, m_cmbAction); DDX_Text(pDX, IDC_FREEZECELL_INDEX_EDT, m_uCellIndex); DDX_Radio(pDX, IDC_FREEZECELL_ALL_RAD, m_RadAppend); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CFreezeCellDlg, CDialog) //{{AFX_MSG_MAP(CFreezeCellDlg) ON_BN_CLICKED(IDC_FREEZECELL_CELL_RAD, OnInsertcellInsertRad) ON_BN_CLICKED(IDC_FREEZECELL_ALL_RAD, OnInsertcellAppendRad) ON_EN_CHANGE(IDC_FREEZECELL_INDEX_EDT, OnChangeInsertcellIndexEdt) ON_BN_CLICKED(IDAPPLY, OnApply) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CFreezeCellDlg message handlers BOOL CFreezeCellDlg::OnInitDialog() { CDialog::OnInitDialog(); // m_uMaxCellIndex = m_pView->m_ConView.GetCellCount(); m_RadAppend = 0; GetDlgItem(IDC_FREEZECELL_INDEX_EDT)->EnableWindow(FALSE); GetDlgItem(IDC_FREEZECELL_INDEX_TXT)->EnableWindow(FALSE); m_cmbAction.AddString(TEXT("Freeze")); m_cmbAction.AddString(TEXT("Unfreeze")); m_cmbAction.SetCurSel(0); m_edtCellIndex.SetNumericEditBox(0, m_pView->m_ConView.GetCellCount() - 1, 1, 0, 0); UpdateData(FALSE); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CFreezeCellDlg::OnInsertcellInsertRad() { GetDlgItem(IDC_FREEZECELL_INDEX_EDT)->EnableWindow(TRUE); GetDlgItem(IDC_FREEZECELL_INDEX_TXT)->EnableWindow(TRUE); } void CFreezeCellDlg::OnInsertcellAppendRad() { GetDlgItem(IDC_FREEZECELL_INDEX_EDT)->EnableWindow(FALSE); GetDlgItem(IDC_FREEZECELL_INDEX_TXT)->EnableWindow(FALSE); } void CFreezeCellDlg::OnOK() { OnApply(); CDialog::OnOK(); } void CFreezeCellDlg::OnChangeInsertcellIndexEdt() { UpdateData(); } void CFreezeCellDlg::OnApply() { INT nIndex; UpdateData(); CConViewApp * pTheApp = (CConViewApp *)AfxGetApp(); if(m_RadAppend == 0) nIndex = -1; else nIndex = m_uCellIndex; m_pView->m_ConView.Cell(nIndex).SetFreeze(!m_cmbAction.GetCurSel()); }