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

186 lines
4.7 KiB
C++

#include "stdafx.h"
#include "CSSZDlg.h"
#include "UITools.h"
extern GlobalContext* GetGlobalContext();
namespace
{
typedef void(_cdecl *setEnv)();
void setDimEnv()
{
#ifndef ZWCAD
HINSTANCE hDllInst = ::LoadLibrary(FilePath::GetArxDir() + _T("\\wfK.arx"));
#else
HINSTANCE hDllInst = ::LoadLibrary(FilePath::GetArxDir() + _T("\\wfK.zrx"));
#endif
if (!hDllInst)
{
acutPrintf(_T("\n未找到wfK.arx。"));
return;
}
setEnv Func = (setEnv)::GetProcAddress(hDllInst, "setDimEnv");
if (Func)
{
Func();
::FreeLibrary(hDllInst);
}
else
acutPrintf(_T("\n函数setEnv获取失败。"));
}
}
IMPLEMENT_DYNAMIC(CCSSZDlg, CDialog)
CCSSZDlg::CCSSZDlg(CWnd* pParent /*=NULL*/)
: CDialog(CCSSZDlg::IDD, pParent)
, m_fW1(2.5f)
, m_fW2(1.5f)
, m_fT1(500.f)
, m_fP1(100.f)
, m_fP2(100.f)
, m_sS1(_T("1:100"))
, m_sS2(_T("1:100"))
, m_fP3(10000.f)
, m_fP4(100.f)
, m_dS3(2.0)
, m_dGr(2)
, m_dAngle(5)
, m_dM(5)
, m_dF(1)
, m_dX(.2)
, m_nEleGripPos(1)
, m_nDimDot(0)
, m_dVSDrawOffset(60.0)
, m_dH(.2)
, m_sPipeMaxDia(_T("500"))
, m_bZTDoubleLine(TRUE)
, m_nSaveToProxy(0)
{
m_pInitxDataMap = NULL;
}
CCSSZDlg::~CCSSZDlg()
{
}
void CCSSZDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT1, m_fW1);
DDV_MinMaxFloat(pDX, m_fW1, 0, 5);
DDX_Text(pDX, IDC_EDIT3, m_fW2);
DDX_Text(pDX, IDC_EDIT4, m_fT1);
DDX_Text(pDX, IDC_EDIT5, m_fP1);
DDX_Text(pDX, IDC_EDIT6, m_fP2);
DDX_CBString(pDX, IDC_COMBO1, m_sS1);
DDX_CBString(pDX, IDC_COMBO2, m_sS2);
DDX_Text(pDX, IDC_EDIT7, m_fP3);
DDX_Text(pDX, IDC_EDIT8, m_fP4);
DDX_Text(pDX, IDC_EDIT28, m_dS3);
DDX_Text(pDX, IDC_EDIT9, m_dGr);
DDX_Text(pDX, IDC_EDIT14, m_dAngle);
DDX_Text(pDX, IDC_EDIT41, m_dM);
DDX_Text(pDX, IDC_EDIT32, m_dF);
DDX_Text(pDX, IDC_EDIT12, m_dX);
DDX_Text(pDX, IDC_EDIT21, m_dH);
DDX_Radio(pDX, IDC_RADIO5, m_nEleGripPos);
DDX_Radio(pDX, IDC_RADIO7, m_nDimDot);
DDX_Text(pDX, IDC_EDIT42, m_dVSDrawOffset);
DDX_CBString(pDX, IDC_COMBO10, m_sPipeMaxDia);
DDX_Check(pDX, IDC_CHECK1, m_bZTDoubleLine);
DDX_Radio(pDX, IDC_RADIO10, m_nSaveToProxy);
}
BEGIN_MESSAGE_MAP(CCSSZDlg, CDialog)
ON_BN_CLICKED(IDOK, &CCSSZDlg::OnBnClickedOk)
END_MESSAGE_MAP()
void CCSSZDlg::SetModelLayoutXData(AecDbObjXDataMap* pxDataMap)
{
m_pInitxDataMap = pxDataMap;
}
BOOL CCSSZDlg::OnInitDialog()
{
CDialog::OnInitDialog();
if (m_pInitxDataMap)
{
double w1 = 0.0, w2 = 0.0, t1 = 0.0, p1 = 0.0, p2 = 0.0,p3 = 10000.0f,p4 = 100.0F;
m_pInitxDataMap->GetAt(_T("S1"), m_sS1);
m_pInitxDataMap->GetAt(_T("S2"), m_sS2);
m_pInitxDataMap->GetAt(_T("W1"), w1);
m_pInitxDataMap->GetAt(_T("W2"), w2);
m_pInitxDataMap->GetAt(_T("T1"), t1);
m_pInitxDataMap->GetAt(_T("P1"), p1);
m_pInitxDataMap->GetAt(_T("P2"), p2);
m_pInitxDataMap->GetAt(_T("P3"), p3);
m_pInitxDataMap->GetAt(_T("P4"), p4);
m_pInitxDataMap->GetAt(_T("S3"), m_dS3);
m_pInitxDataMap->GetAt(_T("G"), m_dGr);
m_pInitxDataMap->GetAt(_T("A"), m_dAngle);
m_pInitxDataMap->GetAt(_T("m_dM"), m_dM);
m_pInitxDataMap->GetAt(_T("m_dF"), m_dF);
m_pInitxDataMap->GetAt(_T("m_dX"), m_dX);
m_pInitxDataMap->GetAt(_T("m_nDimDot"), m_nDimDot);
m_pInitxDataMap->GetAt(_T("m_dVSDrawOffset"), m_dVSDrawOffset);
m_pInitxDataMap->GetAt(_T("m_dH"), m_dH);
m_pInitxDataMap->GetAt(DOC_PIPEMAXDIA, m_sPipeMaxDia);
m_pInitxDataMap->GetAt(_T("ZTDoubleLine"), m_bZTDoubleLine);
m_pInitxDataMap->GetAt(_T("SaveToProxy"), m_nSaveToProxy);
m_fW1 = (float)w1;
m_fW2 = (float)w2;
m_fT1 = (float)t1;
m_fP1 = (float)p1;
m_fP2 = (float)p2;
m_fP3 = (float)p3;
m_fP4 = (float)p4;
}
m_nEleGripPos = GetGlobalContext()->g_nEleGripPos;
UpdateData(FALSE);
return TRUE;
}
void CCSSZDlg::OnBnClickedOk()
{
UpdateData(TRUE);
if (m_pInitxDataMap != NULL)
{
m_pInitxDataMap->SetAt(_T("S1"), m_sS1);
m_pInitxDataMap->SetAt(_T("S2"), m_sS2);
m_pInitxDataMap->SetAt(_T("W1"), m_fW1);
m_pInitxDataMap->SetAt(_T("W2"), m_fW2);
m_pInitxDataMap->SetAt(_T("T1"), m_fT1);
m_pInitxDataMap->SetAt(_T("P1"), m_fP1);
m_pInitxDataMap->SetAt(_T("P2"), m_fP2);
m_pInitxDataMap->SetAt(_T("P3"), m_fP3);
m_pInitxDataMap->SetAt(_T("P4"), m_fP4);
m_pInitxDataMap->SetAt(_T("S3"),m_dS3);
m_pInitxDataMap->SetAt(_T("G"),m_dGr);
m_pInitxDataMap->SetAt(_T("A"),m_dAngle);
m_pInitxDataMap->SetAt(_T("m_dM"),m_dM);
m_pInitxDataMap->SetAt(_T("m_dF"),m_dF);
m_pInitxDataMap->SetAt(_T("m_dX"),m_dX);
m_pInitxDataMap->SetAt(_T("m_nDimDot"),m_nDimDot);
m_pInitxDataMap->SetAt(_T("m_dVSDrawOffset"),m_dVSDrawOffset);
m_pInitxDataMap->SetAt(_T("m_dH"),m_dH);
m_pInitxDataMap->SetAt(DOC_PIPEMAXDIA,m_sPipeMaxDia);
m_pInitxDataMap->SetAt(_T("ZTDoubleLine"),m_bZTDoubleLine);
m_pInitxDataMap->SetAt(_T("SaveToProxy"), m_nSaveToProxy);
}
GetGlobalContext()->g_nEleGripPos = m_nEleGripPos;
setDimEnv();
OnOK();
}