197 lines
3.8 KiB
C++
197 lines
3.8 KiB
C++
#include "stdafx.h"
|
|
#include "MHQDlg.h"
|
|
#include "UITools.h"
|
|
|
|
IMPLEMENT_DYNAMIC(CMHQDlg, CDialog)
|
|
|
|
CMHQDlg::CMHQDlg(CWnd* pParent /*=NULL*/)
|
|
: CDialog(CMHQDlg::IDD, pParent)
|
|
, m_dKg(10.0)
|
|
, m_nWorkT(68)
|
|
, m_sPerf(_T("120"))
|
|
, m_sKindType(_T("FZX-ACT10/1.2-ARS"))
|
|
, m_sName(_T("超细干粉灭火装置"))
|
|
, m_sClass(_T("超细干粉灭火装置"))
|
|
, m_sFactory(_T("深圳市安锐消防有限公司"))
|
|
, m_nSetup(0)
|
|
, m_nHSetup(0)
|
|
, m_bRemove(false)
|
|
, m_nNo(0)
|
|
, m_id3DEqu(-1)
|
|
{
|
|
static int nNo = 1;
|
|
m_nNo = nNo;
|
|
nNo++;
|
|
UIDataCache::Read(_T("%s%s%s%s%s%d%i%i%i%i")
|
|
, _T("CMHQDlg")
|
|
, &m_sPerf
|
|
, &m_sKindType
|
|
, &m_sName
|
|
, &m_sClass
|
|
, &m_sFactory
|
|
, &m_dKg
|
|
, &m_nWorkT
|
|
, &m_nSetup
|
|
, &m_nHSetup
|
|
, &m_id3DEqu);
|
|
}
|
|
|
|
CMHQDlg::~CMHQDlg()
|
|
{
|
|
}
|
|
|
|
void CMHQDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
DDX_Text(pDX, IDC_EDIT6, m_dKg);
|
|
DDX_Text(pDX, IDC_EDIT8, m_nWorkT);
|
|
DDX_Text(pDX, IDC_EDIT7, m_sPerf);
|
|
DDX_Text(pDX, IDC_EDIT5, m_sKindType);
|
|
DDX_Text(pDX, IDC_EDIT4, m_sName);
|
|
DDX_Text(pDX, IDC_EDIT3, m_sClass);
|
|
DDX_Text(pDX, IDC_EDIT1, m_sFactory);
|
|
DDX_Radio(pDX, IDC_RADIO1, m_nSetup);
|
|
DDX_Control(pDX, IDC_RADIO3, m_wndBtL);
|
|
DDX_Control(pDX, IDC_RADIO4, m_wndBtR);
|
|
DDX_Radio(pDX, IDC_RADIO3, m_nHSetup);
|
|
DDX_Text(pDX, IDC_EDIT9, m_nNo);
|
|
DDV_MinMaxInt(pDX, m_nNo, 1, 99);
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CMHQDlg, CDialog)
|
|
ON_BN_CLICKED(IDOK, &CMHQDlg::OnBnClickedOk)
|
|
ON_BN_CLICKED(IDC_RADIO1, &CMHQDlg::OnBnClickedRadio1)
|
|
ON_BN_CLICKED(IDC_RADIO2, &CMHQDlg::OnBnClickedRadio2)
|
|
ON_BN_CLICKED(IDOK2, &CMHQDlg::OnBnClickedOk2)
|
|
ON_BN_CLICKED(IDC_BUTTON_SEL, &CMHQDlg::OnBnClickedButton1)
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
void CMHQDlg::OnBnClickedOk()
|
|
{
|
|
UpdateData();
|
|
|
|
if (m_dKg < 1.e-3)
|
|
{
|
|
AfxMessageBox(_T("灭火器充装量不能为零!"));
|
|
return;
|
|
}
|
|
UIDataCache::Write(_T("%s%s%s%s%s%d%i%i%i%i")
|
|
, _T("CMHQDlg")
|
|
, &m_sPerf
|
|
, &m_sKindType
|
|
, &m_sName
|
|
, &m_sClass
|
|
, &m_sFactory
|
|
, &m_dKg
|
|
, &m_nWorkT
|
|
, &m_nSetup
|
|
, &m_nHSetup
|
|
, &m_id3DEqu);
|
|
CDialog::OnOK();
|
|
}
|
|
|
|
BOOL CMHQDlg::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
#ifndef NDEBUG
|
|
EquTools::subClassGsViewAndShow(&m_wndGs, this, IDC_STATIC_3D, m_id3DEqu);
|
|
#else
|
|
CWnd *pWnd = GetDlgItem(IDC_STATIC_GRP);
|
|
if (pWnd) pWnd->ShowWindow(SW_HIDE);
|
|
pWnd = GetDlgItem(IDC_BUTTON_SEL);
|
|
if (pWnd) pWnd->ShowWindow(SW_HIDE);
|
|
pWnd = GetDlgItem(IDC_STATIC_3D);
|
|
if (pWnd) pWnd->ShowWindow(SW_HIDE);
|
|
#endif // DEBUG
|
|
|
|
|
|
|
|
UpdateData(FALSE);
|
|
OnBnClickedRadio1();
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
void CMHQDlg::OnBnClickedRadio1()
|
|
{
|
|
UpdateData();
|
|
m_wndBtL.EnableWindow(m_nSetup);
|
|
m_wndBtR.EnableWindow(m_nSetup);
|
|
}
|
|
|
|
void CMHQDlg::OnBnClickedRadio2()
|
|
{
|
|
UpdateData();
|
|
m_wndBtL.EnableWindow(m_nSetup);
|
|
m_wndBtR.EnableWindow(m_nSetup);
|
|
}
|
|
|
|
int CMHQDlg::GetScript(CString& sScript, int nRoomIndex,CString& sOffsets)
|
|
{
|
|
double dL = 350.0;//mm
|
|
double dH = 274.0;//mm
|
|
double dTSp = 51.0;//mm
|
|
double dDSp = 40.0;//mm
|
|
|
|
if (m_dKg < 4.0)
|
|
{
|
|
dL = 230.0;//mm
|
|
dH = 229;//mm
|
|
dTSp = 51.0;//mm
|
|
dDSp = 30.0;//mm
|
|
}
|
|
else if (m_dKg < 6.0)
|
|
{
|
|
dL = 270.0;//mm
|
|
dH = 229;//mm
|
|
dTSp = 51.0;//mm
|
|
dDSp = 40.0;//mm
|
|
}
|
|
else if (m_dKg < 12.0)
|
|
{
|
|
dL = 350.0;//mm
|
|
dH = 274.0;//mm
|
|
dTSp = 51.0;//mm
|
|
dDSp = 40.0;//mm
|
|
}
|
|
//其他按照手册查找
|
|
|
|
//FIREET:房间|安装方式|安装位置|X直径L|Y直径H|上间隙TSP|下间隙DSP|填充量|工作温度|性能|型号|名称|类别|厂家|偏移|编号|3D索引
|
|
sScript.Format(_T("<FIREET:%d|%d|%d|%.3f|%.3f|%.3f|%.3f|%.3f|%d|%s|%s|%s|%s|%s|%s|%d|%d>")
|
|
, nRoomIndex
|
|
, m_nSetup
|
|
, m_nHSetup
|
|
, dL
|
|
, dH
|
|
, dTSp
|
|
, dDSp
|
|
, m_dKg
|
|
, m_nWorkT
|
|
, m_sPerf
|
|
, m_sKindType
|
|
, m_sName
|
|
, m_sClass
|
|
, m_sFactory
|
|
, sOffsets
|
|
, m_nNo
|
|
, m_id3DEqu);
|
|
|
|
CString sTemp;
|
|
sTemp.Format(_T("1%d%d"),m_nSetup,m_nHSetup);
|
|
return _ttoi(sTemp);
|
|
}
|
|
|
|
void CMHQDlg::OnBnClickedOk2()
|
|
{
|
|
m_bRemove = true;
|
|
OnBnClickedOk();
|
|
}
|
|
|
|
|
|
void CMHQDlg::OnBnClickedButton1()
|
|
{
|
|
EquTools::selectEquAndShow(&m_wndGs, m_id3DEqu);
|
|
}
|