// DialogLineCfg.cpp : 实现文件 // #include "stdafx.h" #include "FirstStep.h" #include "DialogCfgLine.h" #include "Config.h" // CDialogLineCfg 对话框 IMPLEMENT_DYNAMIC(CDialogCfgLine, CCfgDialog) CDialogCfgLine::CDialogCfgLine(CWnd* pParent /*=NULL*/) : CCfgDialog(2, CDialogCfgLine::IDD, pParent) { // m_ExtCount = 0; // m_ExtStartId = 0; // m_ExtCount = 0; } CDialogCfgLine::~CDialogCfgLine() { } void CDialogCfgLine::DoDataExchange(CDataExchange* pDX) { CDialogEx::DoDataExchange(pDX); DDX_Control(pDX, IDC_PROPERTYGRID_EXTEN, m_ExtenGrid); DDX_Control(pDX, IDC_PROPERTYGRID_SIP_USER, m_SipAccountGrid); DDX_Control(pDX, IDC_PROPERTYGRID_TRUNK_ITEM, m_TrunkItemGrid); DDX_Control(pDX, IDC_PROPERTYGRID_TRUNK_MATCH, m_TrunkMatchGrid); } /***************************************************************** **【函数名称】 upload **【函数功能】 上传配置项 **【参数】 **【返回值】 ****************************************************************/ void CDialogCfgLine::upload( void ) { m_ExtenGrid.upload(); m_SipAccountGrid.upload(); m_TrunkItemGrid.upload(); m_TrunkMatchGrid.upload(); } BEGIN_MESSAGE_MAP(CDialogCfgLine, CCfgDialog) ON_BN_CLICKED(IDC_BTN_EXT_ADD, &CDialogCfgLine::OnBnClickedBtnExtAdd) ON_WM_SHOWWINDOW() ON_BN_CLICKED(IDC_BTN_EXT_DEL, &CDialogCfgLine::OnBnClickedBtnExtDel) ON_BN_CLICKED(IDC_BTN_SIP_USER_ADD, &CDialogCfgLine::OnBnClickedBtnSipUserAdd) ON_BN_CLICKED(IDC_BTN_SIP_USER_DEL, &CDialogCfgLine::OnBnClickedBtnSipUserDel) ON_BN_CLICKED(IDC_BTN_TRUNK_ITEM_ADD, &CDialogCfgLine::OnBnClickedBtnTrunkItemAdd) ON_BN_CLICKED(IDC_BTN_TRUNK_ITEM_DEL, &CDialogCfgLine::OnBnClickedBtnTrunkItemDel) ON_BN_CLICKED(IDC_BTN_TRUNK_MATCH_ADD, &CDialogCfgLine::OnBnClickedBtnTrunkMatchAdd) ON_BN_CLICKED(IDC_BTN_TRUNK_MATCH_DEL, &CDialogCfgLine::OnBnClickedBtnTrunkMatchDel) END_MESSAGE_MAP() // CDialogLineCfg 消息处理程序 BOOL CDialogCfgLine::OnInitDialog() { CCfgDialog::OnInitDialog(); // TODO: 在此添加额外的初始化 m_ExtenGrid.init(); m_SipAccountGrid.init(); m_TrunkItemGrid.init(); m_TrunkMatchGrid.init(); return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE } void CDialogCfgLine::OnBnClickedBtnExtAdd() { // TODO: 在此添加控件通知处理程序代码 UINT ExtStartId = GetDlgItemInt(IDC_EDT_EXTEN); if(ExtStartId == 0) { MessageBox(_T("请输入起始分机号!")); GetDlgItem(IDC_EDT_EXTEN)->SetFocus(); return; } UINT Count = GetDlgItemInt(IDC_EDT_EXT_COUNT); if(Count < 1 || Count > 999) { MessageBox(_T("分机数需在1至999之间!")); GetDlgItem(IDC_EDT_EXT_COUNT)->SetFocus(); return; } CString Password; for(UINT i = 0; i < Count; ++i) { Password.Format(_T("%u"), ExtStartId + i); m_ExtenGrid.addExten(ExtStartId + i, Password); } SetDlgItemText(IDC_EDT_EXTEN, _T("")); SetDlgItemText(IDC_EDT_EXT_COUNT, _T("")); } void CDialogCfgLine::OnBnClickedBtnExtDel() { // TODO: 在此添加控件通知处理程序代码 UINT ExtStartId = GetDlgItemInt(IDC_EDT_EXTEN); if(ExtStartId == 0) { MessageBox(_T("请输入起始分机号!")); GetDlgItem(IDC_EDT_EXTEN)->SetFocus(); return; } UINT Count = GetDlgItemInt(IDC_EDT_EXT_COUNT); if(Count <1 || Count > 99) { MessageBox(_T("分机数需在1至99之间!")); GetDlgItem(IDC_EDT_EXT_COUNT)->SetFocus(); return; } for(UINT i = 0; i < Count; ++i) { m_ExtenGrid.delExten(ExtStartId + i); } SetDlgItemText(IDC_EDT_EXTEN, _T("")); SetDlgItemText(IDC_EDT_EXT_COUNT, _T("")); } void CDialogCfgLine::OnShowWindow(BOOL bShow, UINT nStatus) { CCfgDialog::OnShowWindow(bShow, nStatus); if(bShow) GetDlgItem(IDC_EDT_EXTEN)->SetFocus(); } void CDialogCfgLine::OnBnClickedBtnSipUserAdd() { int AccountId = GetDlgItemInt(IDC_EDT_SIP_USER_ID); if(m_SipAccountGrid.isAccountExisted(AccountId)) { CString Data; Data.Format(_T("ID = %d的SIP注册账户已存在,请更换ID后重新添加"), AccountId); MessageBox(Data, _T("ID重复")); return; } m_SipAccountGrid.addAccount(AccountId); } void CDialogCfgLine::OnBnClickedBtnSipUserDel() { int AccountId = GetDlgItemInt(IDC_EDT_SIP_USER_ID); if(!m_SipAccountGrid.isAccountExisted(AccountId)) { CString Data; Data.Format(_T("不存在ID = %d的SIP注册账户!"), AccountId); MessageBox(Data, _T("ID不存在")); return; } m_SipAccountGrid.delAccount(AccountId); } void CDialogCfgLine::OnBnClickedBtnTrunkItemAdd() { int ItemId = GetDlgItemInt(IDC_EDT_TRUNK_ITEM_ID); if(m_TrunkItemGrid.isItemExisted(ItemId)) { CString Data; Data.Format(_T("ID = %d的中继项已存在,请更换ID后重新添加"), ItemId); MessageBox(Data, _T("ID重复")); return; } m_TrunkItemGrid.addTrunkItem(ItemId); } void CDialogCfgLine::OnBnClickedBtnTrunkItemDel() { int ItemId = GetDlgItemInt(IDC_EDT_TRUNK_ITEM_ID); if(!m_TrunkItemGrid.isItemExisted(ItemId)) { CString Data; Data.Format(_T("不存在ID = %d的中继项!"), ItemId); MessageBox(Data, _T("ID不存在")); return; } m_TrunkItemGrid.delTrunkItem(ItemId); } void CDialogCfgLine::OnBnClickedBtnTrunkMatchAdd() { int MatchId = GetDlgItemInt(IDC_EDT_TRUNK_MATCH_ID); if(m_TrunkMatchGrid.isTrunkMatchExisted(MatchId)) { CString Data; Data.Format(_T("ID = %d的中继匹配已存在,请更换ID后重新添加"), MatchId); MessageBox(Data, _T("ID重复")); return; } m_TrunkMatchGrid.addTrunkMatch(MatchId); } void CDialogCfgLine::OnBnClickedBtnTrunkMatchDel() { int MatchId = GetDlgItemInt(IDC_EDT_TRUNK_MATCH_ID); if(!m_TrunkMatchGrid.isTrunkMatchExisted(MatchId)) { CString Data; Data.Format(_T("不存在ID = %d的中继匹配!"), MatchId); MessageBox(Data, _T("ID不存在")); return; } m_TrunkMatchGrid.delTrunkMatch(MatchId); }