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

74 lines
1.4 KiB
C++

#include "stdafx.h"
#include "XGTDDlg.h"
IMPLEMENT_DYNAMIC(CXGTDDlg, CDialog)
CXGTDDlg::CXGTDDlg(CWnd* pParent /*=NULL*/)
: CDialog(CXGTDDlg::IDD, pParent)
{
}
CXGTDDlg::~CXGTDDlg()
{
}
void CXGTDDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LISTSEG, m_wndSegList);
}
BEGIN_MESSAGE_MAP(CXGTDDlg, CDialog)
ON_BN_CLICKED(IDOK, &CXGTDDlg::OnBnClickedOk)
END_MESSAGE_MAP()
void CXGTDDlg::ShowSegment(const AcArray<EWSegment>& segs)
{
m_arSegments.append(segs);
}
BOOL CXGTDDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_ImageList.Create(IDB_BITMAP4,16,1,RGB(0, 255, 255));
m_wndSegList.SetImageList(&m_ImageList,LVSIL_SMALL);
m_wndSegList.SetExtendedStyle(LVS_EX_FULLROWSELECT);
m_wndSegList.InsertColumn(0,_T("×®ºÅ"),LVCFMT_LEFT,160,160);
m_wndSegList.InsertColumn(1,_T("ÌݶÈn%"),LVCFMT_LEFT,100,100);
m_wndSegList.SetColumnItemData(1,NULL,ET_Edit);
ShowSegmentVals();
return TRUE;
}
void CXGTDDlg::ShowSegmentVals()
{
CString sVal;
for (int i = 0;i < m_arSegments.length();i++)
{
EWSegment& seg = m_arSegments.at(i);
sVal = seg.szStake;
m_wndSegList.InsertItem(i,sVal,4);
sVal.Format(_T("%g"),seg.dGradient);
m_wndSegList.SetItemText(i,1,sVal);
}
}
void CXGTDDlg::OnBnClickedOk()
{
CString sVal;
for (int i = 0;i < m_arSegments.length();i++)
{
EWSegment& seg = m_arSegments.at(i);
sVal = m_wndSegList.GetItemText(i,1);
seg.dGradient = _ttof(sVal);
}
OnOK();
}