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

164 lines
3.3 KiB
C++

#include "stdafx.h"
#include "BHXGDlg.h"
#include "KKSCodeSetDlg.h"
#ifndef ID_OBJLIST
#define ID_OBJLIST 341
#endif
#ifndef WM_ITEM_SEL
#define WM_ITEM_SEL (WM_USER+0x105)
#endif
IMPLEMENT_DYNAMIC(CBHXGDlg, CDialog)
CBHXGDlg::CBHXGDlg(CWnd* pParent /*=NULL*/)
: CDialog(CBHXGDlg::IDD, pParent)
{
}
CBHXGDlg::~CBHXGDlg()
{
}
void CBHXGDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LIST2, m_wndDXFList);
}
BEGIN_MESSAGE_MAP(CBHXGDlg, CDialog)
ON_BN_CLICKED(IDOK, &CBHXGDlg::OnBnClickedOk)
ON_BN_CLICKED(IDC_BUTTON1, &CBHXGDlg::OnBnClickedButton1)
ON_BN_CLICKED(IDCANCEL, &CBHXGDlg::OnBnClickedCancel)
END_MESSAGE_MAP()
void CBHXGDlg::OnBnClickedOk()
{
}
//園催号夸
void CBHXGDlg::OnBnClickedButton1()
{
POSITION ps = m_wndDXFList.GetFirstSelectedItemPosition();
if (ps != NULL)
{
int nItem = m_wndDXFList.GetNextSelectedItem(ps);
if (nItem != -1)
{
CString sDxf = m_wndDXFList.GetItemText(nItem,1);
CString sName = m_wndDXFList.GetItemText(nItem,0);
CKKSCodeSetDlg dlg;
dlg.SetDxfName(sDxf,sName);
dlg.DoModal();
}
}
}
void CBHXGDlg::OnBnClickedCancel()
{
SaveLocalData();
EndDialog(IDCANCEL);
}
BOOL CBHXGDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CBitmap bmp;
if (!bmp.LoadBitmap (IDB_BITMAPPRIV))
{
AfxMessageBox(_T("Can't load bitmap: %x\n"), IDB_BITMAPPRIV);
ASSERT (FALSE);
return FALSE;
}
BITMAP bmpObj;
bmp.GetBitmap (&bmpObj);
UINT nFlags = ILC_COLOR24 | ILC_MASK;
m_imageList.Create (16, bmpObj.bmHeight, nFlags, 0, 0);
m_imageList.Add (&bmp, RGB (255, 0, 0));
m_wndDXFList.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_SINGLEROW);
m_wndDXFList.InsertColumn(0,_T("兆各"),LVCFMT_LEFT,120);
m_wndDXFList.InsertColumn(1,_T("DXF"),LVCFMT_LEFT,160);
m_wndDXFList.InsertColumn(2,_T("園催号夸"),LVCFMT_LEFT,160);
m_wndDXFList.SetImageList(&m_imageList,LVSIL_SMALL);
LoadLocalData();
if (m_wndDXFList.GetItemCount() == 0)
{
ShowDXFList();
}
return TRUE;
}
void CBHXGDlg::ShowDXFList()
{
//箭
m_wndDXFList.InsertItem(0,_T("能悶"),1);
m_wndDXFList.SetItemText(0,1,_T("AEC_DBWALL"));
m_wndDXFList.InsertItem(1,_T("医"),1);
m_wndDXFList.SetItemText(1,1,_T("AEC_DBSLAB"));
m_wndDXFList.InsertItem(2,_T("庠"),1);
m_wndDXFList.SetItemText(2,1,_T("AEC_DBCOLMN"));
m_wndDXFList.InsertItem(3,_T("塑"),1);
m_wndDXFList.SetItemText(3,1,_T("AEC_DBBEAM"));
m_wndDXFList.InsertItem(4,_T("挟笥"),1);
m_wndDXFList.SetItemText(4,1,_T("AEC_X3DPART"));
m_wndDXFList.InsertItem(5,_T("児粥"),1);
m_wndDXFList.SetItemText(5,1,_T("AEC_X3DPART"));
}
BOOL CBHXGDlg::LoadLocalData()
{
CString sFileName,sLocalFile;
sFileName = _T("NAMEDXF.lst");
m_wndDXFList.DeleteAllItems();
CString sName,sDxf,sLn;
sLocalFile = FilePath::GetSysDir() + sFileName;
CStdioFile file2;
if (file2.Open(sLocalFile,CFile::modeRead | CFile::typeText))
{
int nPos = -1,nItem = -1;
while(file2.ReadString(sLn))
{
sLn.TrimRight(_T('\n'));
nPos = sLn.ReverseFind(_T('@'));
if (nPos != -1)
{
sName = sLn.Mid(0,nPos);
sDxf = sLn.Mid(nPos+1);
nItem = m_wndDXFList.InsertItem(m_wndDXFList.GetItemCount(),sName);
m_wndDXFList.SetItemText(nItem,1,sDxf);
}
}
file2.Close();
}
return TRUE;
}
void CBHXGDlg::SaveLocalData()
{
}
void CBHXGDlg::ShowAllEntities()
{
}