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

218 lines
4.1 KiB
C++

#include "stdafx.h"
#include "PTLTDlg.h"
#include "AecDbLineStair.h"
#include "AecDbArcStair.h"
DLLIMPEXP CString IDCreate();
IMPLEMENT_DYNAMIC(CPTLTDlg, CDialog)
CPTLTDlg::CPTLTDlg(CWnd* pParent /*=NULL*/)
: CDialog(CPTLTDlg::IDD, pParent)
, m_dBarH(1080)
, m_dBarSp(1200)
, m_dBarH1(650)
, m_dBarD(30)
, m_dSteepH(200)
, m_dSteept(8)
, m_dSteepW(400)
, m_dW(1000)
, m_dSideW(200)
, m_dSidet(40)
, m_dBomEl(0)
, m_dTopEl(4000)
, m_sMaterial(_T("不锈钢"))
, m_sFactory(_T("厂家自制"))
, m_sNo(_T(""))
, m_bNOSetDefault(TRUE)
{
GET_CACHE(CPTLTDlg
, %f%f%f%f%f%f%f%f%f%f%f%f%s%s%s
, &m_dBarH
, &m_dBarSp
, &m_dBarH1
, &m_dBarD
, &m_dSteepH
, &m_dSteept
, &m_dSteepW
, &m_dW
, &m_dSideW
, &m_dSidet
, &m_dBomEl
, &m_dTopEl
, &m_sMaterial
, &m_sFactory
, &m_sNo );
if (m_bNOSetDefault)
m_sNo = IDCreate();
}
CPTLTDlg::~CPTLTDlg()
{
}
void CPTLTDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT1, m_dBarH);
DDX_Text(pDX, IDC_EDIT2, m_dBarSp);
DDX_Text(pDX, IDC_EDIT13, m_dBarH1);
DDX_Text(pDX, IDC_EDIT12, m_dBarD);
DDX_Text(pDX, IDC_EDIT4, m_dSteepH);
DDX_Text(pDX, IDC_EDIT5, m_dSteept);
DDX_Text(pDX, IDC_EDIT18, m_dSteepW);
DDX_Text(pDX, IDC_EDIT20, m_dW);
DDX_Text(pDX, IDC_EDIT7, m_dSideW);
DDX_Text(pDX, IDC_EDIT8, m_dSidet);
DDX_Text(pDX, IDC_EDIT10, m_dBomEl);
DDX_Text(pDX, IDC_EDIT11, m_dTopEl);
DDX_Text(pDX, IDC_EDIT23, m_sMaterial);
DDX_Text(pDX, IDC_EDIT24, m_sFactory);
DDX_Text(pDX, IDC_EDIT29, m_sNo);
DDX_Check(pDX, IDC_CHECK7, m_bNOSetDefault);
}
BEGIN_MESSAGE_MAP(CPTLTDlg, CDialog)
ON_BN_CLICKED(IDOK, &CPTLTDlg::OnBnClickedOk)
ON_BN_CLICKED(IDC_CHECK7, &CPTLTDlg::OnBnClickedCheck7)
END_MESSAGE_MAP()
BOOL CPTLTDlg::OnInitDialog()
{
CDialog::OnInitDialog();
if (m_bNOSetDefault)
{
GetDlgItem(IDC_EDIT29)->EnableWindow(FALSE);
}
UpdateData(FALSE);
return TRUE;
}
void CPTLTDlg::GetLineStairData(LineStair& data) const
{
data.bar.dD = m_dBarD;
data.bar.dt = 2.0;
data.bar.dBomEl = m_dBomEl;
data.bar.dH1 = m_dBarH1;
data.bar.dH = m_dBarH;
data.bar.dP = m_dBarSp;
data.dSteepH = m_dSteepH;
data.dSteept = m_dSteept;
data.dSteepW = m_dSteepW;
data.dSidet = m_dSidet;
data.dSideW = m_dSideW;
data.dW = m_dW;
data.dBomEl = m_dBomEl;
data.dTopEl = m_dTopEl;
_tcscpy(data.m_sMaterial,m_sMaterial);
_tcscpy(data.m_sFactory,m_sFactory);
_tcscpy(data.m_sNo,m_sNo);
}
void CPTLTDlg::SetFromId(AcDbObjectId& id)
{
AcDbEntity* pEnt = NULL;
if (Acad::eOk == acdbOpenAcDbEntity(pEnt,id,AcDb::kForRead))
{
AecDbLineStair* pLS = AecDbLineStair::cast(pEnt);
if (pLS != NULL)
{
LineStair data;
pLS->GetLineStairData(data);
m_dBarD = data.bar.dD;
m_dBomEl = data.bar.dBomEl;
m_dBarH1 = data.bar.dH1;
m_dBarH = data.bar.dH;
m_dBarSp = data.bar.dP;
m_sMaterial = data.m_sMaterial;
m_sFactory = data.m_sFactory;
m_dSteepH = data.dSteepH ;
m_dSteept = data.dSteept;
m_dSteepW = data.dSteepW;
m_dSidet = data.dSidet;
m_dSideW = data.dSideW;
m_dW = data.dW;
m_dBomEl = data.dBomEl;
m_dTopEl = data.dTopEl;
m_sNo = data.m_sNo;
}
AecDbArcStair* pAS = AecDbArcStair::cast(pEnt);
if (pAS != NULL)
{
LineStair data;
pAS->GetLineStairData(data);
m_dBarD = data.bar.dD;
m_dBomEl = data.bar.dBomEl;
m_dBarH1 = data.bar.dH1;
m_dBarH = data.bar.dH;
m_dBarSp = data.bar.dP;
m_sMaterial = data.m_sMaterial;
m_sFactory = data.m_sFactory;
m_dSteepH = data.dSteepH ;
m_dSteept = data.dSteept;
m_dSteepW = data.dSteepW;
m_dSidet = data.dSidet;
m_dSideW = data.dSideW;
m_dW = data.dW;
m_dBomEl = data.dBomEl;
m_dTopEl = data.dTopEl;
m_sNo = data.m_sNo;
}
pEnt->close();
}
}
void CPTLTDlg::OnBnClickedOk()
{
UpdateData(TRUE);
SET_CACHE(CPTLTDlg
, %f%f%f%f%f%f%f%f%f%f%f%f%s%s%s
, m_dBarH
, m_dBarSp
, m_dBarH1
, m_dBarD
, m_dSteepH
, m_dSteept
, m_dSteepW
, m_dW
, m_dSideW
, m_dSidet
, m_dBomEl
, m_dTopEl
, m_sMaterial
, m_sFactory
, m_sNo);
OnOK();
}
void CPTLTDlg::OnBnClickedCheck7()
{
if (m_bNOSetDefault)
{
GetDlgItem(IDC_EDIT29)->EnableWindow(FALSE);
}
else
{
GetDlgItem(IDC_EDIT29)->EnableWindow(TRUE);
}
}