Files
envi-code/SourceCode/Code2026/EarthWormCmd/PQSZDlg.cpp
T
2026-09-28 15:28:50 +08:00

167 lines
3.5 KiB
C++

#include "stdafx.h"
#include "PQSZDlg.h"
#include "EarThwormDef.h"
#include "UIHistory.h"
IMPLEMENT_DYNAMIC(CPQSZDlg, CDialog)
CPQSZDlg::CPQSZDlg(CWnd* pParent /*=NULL*/)
: CDialog(CPQSZDlg::IDD, pParent)
, m_dW(0.25)
, m_sDrawScale(_T("1:100"))
, m_bQLBZHatch(TRUE)
, m_bWallJC(TRUE)
, m_dWSlab(0.25)
, m_dWBeam(0.25)
, m_dWCol(0.25)
, m_dWYGDT(.25)
, m_bWSlab(TRUE)
, m_bWBeam(TRUE)
, m_bWCol(TRUE)
, m_bWYGDT(TRUE)
, m_bWallHatch(TRUE)
, m_bBeamHatch(TRUE)
, m_bColumnHatch(TRUE)
, m_bSlabHatch(TRUE)
, m_bYGDTHatch(TRUE)
, m_bToBlockRef(FALSE)
{
GET_CACHE(CPQSZDlg
, %d%d%d%d%d%d%d%d%d%d%d%f%f%f%f%f%s
, &m_bWallJC
, &m_bWSlab
, &m_bWBeam
, &m_bWCol
, &m_bWYGDT
, &m_bWallHatch
, &m_bBeamHatch
, &m_bSlabHatch
, &m_bColumnHatch
, &m_bYGDTHatch
, &m_bToBlockRef
, &m_dW
, &m_dWSlab
, &m_dWCol
, &m_dWBeam
, &m_dWYGDT
, &m_sDrawScale);
}
CPQSZDlg::~CPQSZDlg()
{
}
void CPQSZDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDITPLOTWIDTH, m_dW);
DDX_CBString(pDX, IDC_COMBOSCALE, m_sDrawScale);
DDX_Text(pDX, IDC_EDITPLOTWIDTH2, m_dWSlab);
DDX_Text(pDX, IDC_EDITPLOTWIDTH3, m_dWBeam);
DDX_Text(pDX, IDC_EDITPLOTWIDTH4, m_dWCol);
DDX_Text(pDX, IDC_EDITPLOTWIDTH5, m_dWYGDT);
DDX_Check(pDX, IDC_CHECK2, m_bWallJC);
DDX_Check(pDX, IDC_CHECK5, m_bWSlab);
DDX_Check(pDX, IDC_CHECK6, m_bWBeam);
DDX_Check(pDX, IDC_CHECK7, m_bWCol);
DDX_Check(pDX, IDC_CHECK8, m_bWYGDT);
DDX_Check(pDX, IDC_CHECK_WALL, m_bWallHatch);
DDX_Check(pDX, IDC_CHECK_BEAM, m_bBeamHatch);
DDX_Check(pDX, IDC_CHECK_SLAB, m_bSlabHatch);
DDX_Check(pDX, IDC_CHECK_COLUMN, m_bColumnHatch);
DDX_Check(pDX, IDC_CHECK_YGDT, m_bYGDTHatch);
DDX_Check(pDX, IDC_CHECK1, m_bToBlockRef);
}
BEGIN_MESSAGE_MAP(CPQSZDlg, CDialog)
ON_BN_CLICKED(IDOK, &CPQSZDlg::OnBnClickedOk)
END_MESSAGE_MAP()
BOOL CPQSZDlg::OnInitDialog()
{
CDialog::OnInitDialog();
UpdateData(FALSE);
return TRUE;
}
void CPQSZDlg::OnBnClickedOk()
{
UpdateData();
m_bQLBZHatch = 0;
if (m_bWallHatch)
m_bQLBZHatch |= 0x1;
if (m_bBeamHatch)
m_bQLBZHatch |= 0x2;
if (m_bSlabHatch)
m_bQLBZHatch |= 0x4;
if (m_bColumnHatch)
m_bQLBZHatch |= 0x8;
if (m_bYGDTHatch)
m_bQLBZHatch |= 0x10;
m_xDatSetup.SetAt(KEY_QLBZHATCH,m_bQLBZHatch);
double dW = GetDocScale() * m_dW;
m_xDatSetup.SetAt(KEY_WALLJC,m_bWallJC);
m_xDatSetup.SetAt(KEY_WALLW,dW);
double dWSlab = GetDocScale() * m_dWSlab;
m_xDatSetup.SetAt(KEY_BWSLAB,m_bWSlab);
m_xDatSetup.SetAt(KEY_WSLAB,dWSlab);
double dWBeam = GetDocScale() * m_dWBeam;
m_xDatSetup.SetAt(KEY_BWBEAM,m_bWBeam);
m_xDatSetup.SetAt(KEY_WBEAM, dWBeam);
double dWCol = GetDocScale() * m_dWCol;
m_xDatSetup.SetAt(KEY_BWCOL,m_bWCol);
m_xDatSetup.SetAt(KEY_WCOL, dWCol);
double dWYGDT = GetDocScale() * m_dWYGDT;
m_xDatSetup.SetAt(KEY_BWYGDT,m_bWYGDT);
m_xDatSetup.SetAt(KEY_WYGDT, dWYGDT);
m_xDatSetup.SetAt(KEY_BLK2D, m_bToBlockRef);
SET_CACHE(CPQSZDlg
, %d%d%d%d%d%d%d%d%d%d%d%f%f%f%f%f%s
, m_bWallJC
, m_bWSlab
, m_bWBeam
, m_bWCol
, m_bWYGDT
, m_bWallHatch
, m_bBeamHatch
, m_bSlabHatch
, m_bColumnHatch
, m_bYGDTHatch
, m_bToBlockRef
, m_dW
, m_dWSlab
, m_dWCol
, m_dWBeam
, m_dWYGDT
, m_sDrawScale);
OnOK();
}
double CPQSZDlg::GetDocScale() const
{
int nIndex = m_sDrawScale.Find(_T(':'),0);
double dDocScale = 1.0;
if (nIndex != -1)
{
dDocScale = _ttof(m_sDrawScale.Mid(nIndex + 1)) / _ttof(m_sDrawScale.Mid(0,nIndex));
}
return dDocScale;
}
void CPQSZDlg::GetSetup(AecDbObjXDataMap& xData)
{
xData.CopyFrom(&m_xDatSetup);
}