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

94 lines
1.8 KiB
C++

#include "stdafx.h"
#include "SBXZDlg.h"
#include "AecDbEntityBase.h"
#include "AecMInterfaces.h"
#include "AecDbEwFitting.h"
IMPLEMENT_DYNAMIC(CSBXZDlg, CDialog)
CSBXZDlg::CSBXZDlg(CWnd* pParent /*=NULL*/)
: CDialog(CSBXZDlg::IDD, pParent)
, m_nXYZ(0)
, m_dAngle(90)
, m_bXYZ(FALSE)
{
m_pEqu = NULL;
m_nIndex1 = -1;
m_pMInf = NULL;
}
CSBXZDlg::~CSBXZDlg()
{
}
void CSBXZDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LIST1, m_wndListInf1);
DDX_LBIndex(pDX, IDC_LIST1, m_nIndex1);
DDX_Radio(pDX, IDC_RADIO1, m_nXYZ);
DDX_Text(pDX, IDC_EDIT1, m_dAngle);
DDX_Check(pDX, IDC_CHECK1, m_bXYZ);
}
BEGIN_MESSAGE_MAP(CSBXZDlg, CDialog)
ON_BN_CLICKED(IDOK, &CSBXZDlg::OnBnClickedOk)
ON_LBN_SELCHANGE(IDC_LIST1, &CSBXZDlg::OnLbnSelchangeList1)
END_MESSAGE_MAP()
BOOL CSBXZDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CRect rc;
GetDlgItem(IDC_STATICVIEW)->GetWindowRect(rc);
GetDlgItem(IDC_STATICVIEW)->ShowWindow(SW_HIDE);
ScreenToClient(rc);
m_wndPreview.Create(rc,this,IDC_STATICVIEW);
m_wndPreview.Init(1,1,-1,NULL);
CString sName = _T("É豸");
AecDbEwFitting* pFit = AecDbEwFitting::cast(m_pEqu);
if (pFit != NULL)
{
m_wndPreview.InitSingleCtrlFor3D(m_pEqu,sName,FALSE);
}
else
{
m_wndPreview.InitSingleCtrlFor3D(m_pEqu,sName);
}
m_wndPreview.Redraw();
CString sInf;
for (int i = 0;i < m_pMInf->GetInterfaceCount();i++)
{
sInf.Format(_T("½Ó¿Ú%d"),i+1);
m_wndListInf1.AddString(sInf);
}
return TRUE;
}
void CSBXZDlg::OnBnClickedOk()
{
OnOK();
}
void CSBXZDlg::OnLbnSelchangeList1()
{
UpdateData();
if (m_nIndex1 >= 0)
{
m_wndPreview.Clear();
if (m_pMInf != NULL)
m_pMInf->SetActiveInf(m_nIndex1);
CString sName = _T("É豸");
m_wndPreview.InitSingleCtrlFor3D(m_pEqu,sName);
m_wndPreview.Redraw();
}
}