#include "stdafx.h" #include "JPSGDlg.h" #include "CCSYDlg.h" #include "UITools.h" IMPLEMENT_DYNAMIC(CJPSGDlg, CDialog) CJPSGDlg::CJPSGDlg(CWnd* pParent /*=NULL*/) : CDialog(CJPSGDlg::IDD, pParent) , m_dW(300) , m_dH(100) , m_nPos(0) , m_nPosTail(1) , m_nPosMid(0) , m_dGrade(1.5) , m_bRemove(false) , m_nNo(0) { static int nNo = 1; m_nNo = nNo; nNo++; ::memset(&m_data, 0, sizeof(EWFnctNode)); } CJPSGDlg::~CJPSGDlg() { } void CJPSGDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDITW, m_dW); DDX_Text(pDX, IDC_EDITH, m_dH); DDX_Radio(pDX, IDC_RADIOL, m_nPos); DDX_Radio(pDX, IDC_RADIOL2, m_nPosTail); DDX_Radio(pDX, IDC_RADIOL3, m_nPosMid); DDX_Text(pDX, IDC_EDITGRD, m_dGrade); DDX_Text(pDX, IDC_EDITH2, m_nNo); DDV_MinMaxInt(pDX, m_nNo, 1, 99); } BEGIN_MESSAGE_MAP(CJPSGDlg, CDialog) ON_BN_CLICKED(IDOK, &CJPSGDlg::OnBnClickedOk) ON_BN_CLICKED(IDC_BUTTON1, &CJPSGDlg::OnBnClickedButton1) ON_BN_CLICKED(IDOK2, &CJPSGDlg::OnBnClickedOk2) END_MESSAGE_MAP() BOOL CJPSGDlg::OnInitDialog() { CDialog::OnInitDialog(); m_data.fNodeDef[0] = AS_MUNITF(300); m_data.fNodeDef[1] = AS_MUNITF(100); m_data.fNodeDef[2] = .1f; m_data.fNodeDef[3] = 2.f; m_data.fNodeDef[4] = .1f; m_data.fNodeDef[5] = 1.5f; UIDataCache::FindNode(_T("JPSG"), &m_data); m_dW = AS_M2MM(m_data.fNodeDef[0]); m_dH = AS_M2MM(m_data.fNodeDef[1]); m_nPos = m_data.fNodeDef[2] > 1.f ? 1 : 0; m_nPosTail = m_data.fNodeDef[3] > 1.f ? 1 : 0; m_nPosMid = m_data.fNodeDef[4] > 1.f ? 1 : 0; m_dGrade = m_data.fNodeDef[5]; UpdateData(FALSE); return TRUE; } void CJPSGDlg::OnBnClickedOk() { UpdateData(); if (m_dW < 10.0) { AfxMessageBox(_T("排水沟宽度太小!")); return; } if (m_dH < 10.0) { AfxMessageBox(_T("排水沟深度太小!")); return; } m_data.fNodeDef[0] = AS_MUNITF(m_dW); m_data.fNodeDef[1] = AS_MUNITF(m_dH); m_data.fNodeDef[2] = m_nPos == 0 ? .1f : 2.f; m_data.fNodeDef[3] = m_nPosTail == 0 ? .1f : 2.f; m_data.fNodeDef[4] = m_nPosMid == 0 ? .1f : 2.f; m_data.fNodeDef[5] = m_dGrade; UIDataCache::WriteNode(_T("JPSG"), &m_data); OnOK(); } void CJPSGDlg::OnBnClickedButton1() { CCCSYDlg dlg; dlg.SetBmpFileName(_T("JPSG.bmp")); dlg.DoModal(); } int CJPSGDlg::GetScript(CString& sScript, int nRoomIndex) { //GUTTERWAY:1房间位置左右|中房间位置左右|末房间位置左右|排水沟宽|排水沟深H|坡度 sScript.Format(_T(""), m_nPos, m_nPosMid, m_nPosTail, m_dW, m_dH, m_dGrade); return 0; } void CJPSGDlg::OnBnClickedOk2() { m_bRemove = true; OnBnClickedOk(); }