void CDnsSettingDlg::OnBnClickedButtonEditrule() { // TODO: 在此添加控件通知处理程序代码 CDnsRuleAddDlg dlg; dlg.m_DnsPath = m_RuleList.GetItemText( m_RuleList.GetSelectionMark(),0 ); dlg.m_DlgTitle = _T("编辑DNS规则"); dlg.m_bNewRule = FALSE; if( m_RuleList.GetItemText( m_RuleList.GetSelectionMark(),1 ) == _T("允许") ) { dlg.m_bAllowed = TRUE; } else { dlg.m_bAllowed = FALSE; } if( IDOK == dlg.DoModal()) { if( !RegDeleteDnsRule( m_RuleList.GetItemData(m_RuleList.GetSelectionMark()))) { AfxMessageBox(_T("更新规则失败!")); return; } //添加新规则 RegAddDnsRule( dlg.m_DnsPath.GetBuffer(), dlg.m_bAllowed ); UpdateRuleList(); } }
void CDnsSettingDlg::OnBnClickedButtonDelrule() { // TODO: 在此添加控件通知处理程序代码 if( !RegDeleteDnsRule( m_RuleList.GetItemData(m_RuleList.GetSelectionMark()))) AfxMessageBox(_T("删除规则失败!")); else { UpdateRuleList(); } }
BOOL CDnsSettingDlg::OnInitDialog() { CButton *pBtn = (CButton*)GetDlgItem( IDC_BUTTON_EDITRULE ); CDialog::OnInitDialog(); m_RuleList.InsertColumn(0,_T("DNS名称"),0,450); m_RuleList.InsertColumn(1,_T("解析控制"),0,150); UpdateRuleList(); pBtn->EnableWindow( FALSE ); return TRUE; // 除非将焦点设置到控件,否则返回 TRUE }
BOOL CIpSettingDlg::OnInitDialog() { CDialog::OnInitDialog(); m_RuleList.InsertColumn(0,_T("规则名称"),0,100); m_RuleList.InsertColumn(1,_T("策略"),0,50); m_RuleList.InsertColumn(2,_T("方向"),0,50); m_RuleList.InsertColumn(3,_T("源IP"),0,100); m_RuleList.InsertColumn(4,_T("目标IP"),0,100); m_RuleList.InsertColumn(5,_T("协议类型"),0,70); m_RuleList.InsertColumn(6,_T("源端口"),0,70); m_RuleList.InsertColumn(7,_T("目标端口"),0,70); m_RuleList.InsertColumn(8,_T("ICMP类型和代码"),0,100); UpdateRuleList(); return TRUE; }
bool OpenCLTraceOptions::SaveCurrentSettings() { m_currentSettings.m_apiToTrace = m_pOpenCLRadioButton->isChecked() ? APIToTrace_OPENCL : APIToTrace_HSA; m_currentSettings.m_alwaysShowAPIErrorCode = m_pShowAPIErrorCodeCB->isChecked(); m_currentSettings.m_collapseClGetEventInfo = m_pCollapseCallsCB->isChecked(); m_currentSettings.m_generateSymInfo = m_pEnableNavigationCB->isChecked(); m_currentSettings.m_generateKernelOccupancy = m_pGenerateOccupancyCB->isChecked(); m_currentSettings.m_generateSummaryPage = m_pGenerateSummaryPageRB->isChecked(); m_currentSettings.m_filterAPIsToTrace = m_pAPIsToTraceRB->isChecked(); m_currentSettings.m_maxAPICalls = m_pMaxNumberOfAPIsSB->value(); m_currentSettings.m_writeDataTimeOut = m_pWriteDataTimeOutCB->isChecked(); m_currentSettings.m_timeoutInterval = m_pTimeOutIntervalSB->value(); UpdateRuleList(); UpdateAPIFilterList(); UpdateProjectSettings(); return true; }
void CDnsSettingDlg::OnBnClickedButtonAddrule() { // TODO: 在此添加控件通知处理程序代码 CDnsRuleAddDlg dlg; dlg.m_bNewRule = TRUE; if( IDOK == dlg.DoModal()) { //添加新规则 if( false == RegAddDnsRule( dlg.m_DnsPath.GetBuffer(), dlg.m_bAllowed )) { AfxMessageBox(_T("该程序已存在!")); return; } UpdateRuleList(); } else { } }
bool OpenCLTraceOptions::setProjectSettingsXML(const gtString& projectAsXMLString) { QString qtStr = acGTStringToQString(projectAsXMLString); QDomDocument doc; doc.setContent(qtStr.toUtf8()); QDomElement rootElement = doc.documentElement(); QDomNode rootNode = rootElement.firstChild(); QDomNode childNode = rootNode.firstChild(); QString nodeVal; bool val; while (!childNode.isNull()) { val = false; nodeVal = childNode.firstChild().nodeValue(); if (nodeVal == "T") { val = true; } if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsGenerateOccupancy)) { m_currentSettings.m_generateKernelOccupancy = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsShowErrorCode)) { m_currentSettings.m_alwaysShowAPIErrorCode = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsCollapseClGetEventInfo)) { m_currentSettings.m_collapseClGetEventInfo = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsEnableNavigation)) { m_currentSettings.m_generateSymInfo = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsGenerateSummaryPage)) { m_currentSettings.m_generateSummaryPage = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsAPIsToFilter)) { m_currentSettings.m_filterAPIsToTrace = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsMaxAPIs)) { m_currentSettings.m_maxAPICalls = nodeVal.toInt(); } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsWriteDataTimeOut)) { m_currentSettings.m_writeDataTimeOut = val; } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsTimeOutInterval)) { m_currentSettings.m_timeoutInterval = nodeVal.toInt(); } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsAPIType)) { if (nodeVal == acGTStringToQString(GPU_STR_ProjectSettingsAPITypeOpenCL)) { m_currentSettings.m_apiToTrace = APIToTrace_OPENCL; } else if (nodeVal == acGTStringToQString(GPU_STR_ProjectSettingsAPITypeHSA)) { m_currentSettings.m_apiToTrace = APIToTrace_HSA; } else { m_currentSettings.m_apiToTrace = APIToTrace_OPENCL; GT_ASSERT_EX(false, L"Invalid project settings option"); } } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsRulesTree)) { if (childNode.hasChildNodes()) { UpdateTreeWidgetFromXML(childNode, m_pAPIRulesTW, false); } else { if (m_pAPIRulesTW != nullptr) { Util::SetCheckState(m_pAPIRulesTW, true); } } UpdateRuleList(); } else if (childNode.nodeName() == acGTStringToQString(GPU_STR_ProjectSettingsAPIsFilterTree)) { if (childNode.hasChildNodes()) { UpdateTreeWidgetFromXML(childNode, m_pAPIsToTraceTW, true); } else { if (m_pAPIsToTraceTW != nullptr) { Util::SetCheckState(m_pAPIsToTraceTW, true); } } UpdateAPIFilterList(); } childNode = childNode.nextSibling(); } return true; }