Files
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

140 lines
3.2 KiB
C++

#include "stdafx.h"
#include "TJDJDlg.h"
#include "UITools.h"
#include "coreTools.h"
IMPLEMENT_DYNAMIC(CTJDJDlg, CDialog)
CTJDJDlg::CTJDJDlg(CWnd* pParent /*=NULL*/)
: CDialog(CTJDJDlg::IDD, pParent)
, m_bModify(false)
, m_nOldRow(-1)
{
static int nNo = 1;
m_data.m_nNo = nNo;
nNo++;
UIDataCache::Read(_T("%i%d%d%d%d%d%d%s%s%d%i")
, _T("CTJDJDlg")
, &m_data.m_nRow
, &m_data.m_dVSpace
, &m_data.m_dHSpace
, &m_data.m_dDistFrTop
, &m_data.m_dL
, &m_data.m_dW
, &m_data.m_dt
, &m_data.m_sMaterial
, &m_data.m_sSpec
, &m_data.m_dX
, &m_data.m_id3DEqu);
}
CTJDJDlg::~CTJDJDlg()
{
}
void CTJDJDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT3, m_data.m_nRow);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT1, m_data.m_dVSpace);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT4, m_data.m_dHSpace);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT2, m_data.m_dDistFrTop);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT38, m_data.m_dL);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT10, m_data.m_dW);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT36, m_data.m_dt);
DDX_Text(pDX, IDC_EDIT34, m_data.m_sMaterial);
DDX_Text(pDX, IDC_EDIT35, m_data.m_sSpec);
CoreTools::DDX_Text_Ex(pDX, IDC_EDIT42, m_data.m_dX);
DDX_Text(pDX, IDC_EDIT44, m_data.m_nNo);
DDV_MinMaxInt(pDX, m_data.m_nNo, 1, 99);
}
BEGIN_MESSAGE_MAP(CTJDJDlg, CDialog)
ON_BN_CLICKED(IDOK, &CTJDJDlg::OnBnClickedOk)
ON_BN_CLICKED(IDOK2, &CTJDJDlg::OnBnClickedOk2)
ON_BN_CLICKED(IDC_BUTTON_SEL, &CTJDJDlg::OnBnClickedButtonSel)
END_MESSAGE_MAP()
BOOL CTJDJDlg::OnInitDialog()
{
CDialog::OnInitDialog();
SetWindowText(m_bModify ? _T("修改吊架") : _T("添加吊架"));
UpdateData(FALSE);
#ifndef NDEBUG
EquTools::subClassGsViewAndShow(&m_wndGs, this, IDC_STATIC_3D, m_data.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
return TRUE;
}
void CTJDJDlg::OnBnClickedOk()
{
UpdateData();
if (m_data.m_nRow < 1)
{
AfxMessageBox(_T("支架行数至少一行!请输入行数!"));
return;
}
if (m_data.m_dVSpace < 1.e-6 || m_data.m_dHSpace < 1.e-6)
{
AfxMessageBox(_T("支架间距数据不合理!请重新输入!"));
return;
}
if (m_data.m_dW < 1.e-6 || m_data.m_dt < 1.e-6)
{
AfxMessageBox(_T("支架角钢数据不合理!请重新输入!"));
return;
}
UIDataCache::Write(_T("%i%d%d%d%d%d%d%s%s%d%i")
, _T("CTJDJDlg")
, &m_data.m_nRow
, &m_data.m_dVSpace
, &m_data.m_dHSpace
, &m_data.m_dDistFrTop
, &m_data.m_dL
, &m_data.m_dW
, &m_data.m_dt
, &m_data.m_sMaterial
, &m_data.m_sSpec
, &m_data.m_dX
, &m_data.m_id3DEqu);
if (m_bModify)
{
if (m_data.m_nRow != m_nOldRow) // 说明修改了行数
m_data.m_cabling.initSubCabling(m_data.m_nRow);
}
m_data.m_cabling.initSubCabling(m_data.m_nRow);
OnOK();
}
int CTJDJDlg::GetScript(CString& sScript,int nRoomIndex,CString& sOffsets)
{
sScript = m_data.toString(nRoomIndex, sOffsets);
return 0;
}
void CTJDJDlg::OnBnClickedOk2()
{
OnBnClickedOk();
}
void CTJDJDlg::OnBnClickedButtonSel()
{
EquTools::selectEquAndShow(&m_wndGs, m_data.m_id3DEqu);
}