// SaniWarePropDlg.cpp : implementation file // #include "stdafx.h" #include "resource.h" #include "SaniFittingAttrDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CSaniFittingAttrDlg dialog CSaniFittingAttrDlg::CSaniFittingAttrDlg(CWnd* pParent /*=NULL*/) : CSaniFittingAttrBaseDlg(CSaniFittingAttrDlg::IDD, pParent) { //{{AFX_DATA_INIT(CSaniFittingAttrDlg) m_bMultiPlace = FALSE; m_nComponentSpace = 0; m_nDistToWall = 0; m_nInitSpace = 0; m_csKindName = _T(""); m_csDescName = _T(""); //}}AFX_DATA_INIT } void CSaniFittingAttrDlg::DoDataExchange(CDataExchange* pDX) { CSaniFittingAttrBaseDlg::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSaniFittingAttrDlg) DDX_Check(pDX, IDC_CHECK_MULTIPLACE, m_bMultiPlace); DDX_Text(pDX, IDC_EDIT_CSPACE, m_nComponentSpace); DDX_Text(pDX, IDC_EDIT_DISTWALL, m_nDistToWall); DDX_Text(pDX, IDC_EDIT_ISPACE, m_nInitSpace); DDX_Text(pDX, IDC_EDIT_KIND, m_csKindName); DDX_Text(pDX, IDC_EDIT_NAME, m_csDescName); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CSaniFittingAttrDlg, CSaniFittingAttrBaseDlg) //{{AFX_MSG_MAP(CSaniFittingAttrDlg) // NOTE: the ClassWizard will add message map macros here //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CSaniFittingAttrDlg message handlers // 从设备的数据中取数 BOOL CSaniFittingAttrDlg::SetFromSaniWare(const CSaniFittingAttr &data, BOOL bGetNextName) { m_bMultiPlace = (data.m_nPlaceFlag==0); if(bGetNextName) { XString sNextName, sDwbName; sDwbName << g_sDwbPath <<_T("lvtry.dwb"); sNextName << data.m_csBlockName; if(GetNextItem(sDwbName, sNextName)!=RTNORM) return FALSE; m_csBlockName = sNextName; } else { m_csBlockName = data.m_csBlockName; } m_csDescName = data.m_csDescName; m_csKindName = data.m_csKindName; m_nComponentSpace = AS_INT(data.m_dComponentSpace); m_nDistToWall = AS_INT(data.m_dDistToWall); m_nInitSpace = AS_INT(data.m_dInitSpace); m_dOrigenalSizeX = data.m_dOrigenalSizeX; m_dOrigenalSizeY = data.m_dOrigenalSizeY; return TRUE; } XString Int2Char8(unsigned nIndex) { XString sIndex(_T("%d"), nIndex); int nLen=(int)_tcslen(sIndex); XString sRet; int nSpace=8-nLen; for(int i=0; i3) { int slen=_tcslen(maxStr); TCHAR a1=maxStr[slen-1], a2=maxStr[slen-2], a3=maxStr[slen-3]; if(a1>=_T('0') && a1<_T('9')) a1++; else if(a1==_T('9') && a2>=_T('0') && a2<_T('9')) { a1=_T('0'); a2++; } else if(a1==_T('9') && a2==_T('9') && a3>=_T('0') && a3<_T('9')) { a1=a2=_T('0'); a3++; } else { a1++; if(!_istalpha(a1) && !_istdigit(a1)) return RTERROR; } _tcscpy(sld, maxStr); sld[slen-1]=a1; sld[slen-2]=a2; sld[slen-3]=a3; } else { _tcscpy(sld, _T("00000000")); return RTERROR; } return RTNORM; } #endif // 把数据写到设备中 BOOL CSaniFittingAttrDlg::WriteToSaniWare(CSaniFittingAttr &data) const { data.m_nPlaceFlag = !m_bMultiPlace; data.m_csBlockName = m_csBlockName; data.m_csDescName = m_csDescName; data.m_csKindName = m_csKindName; data.m_dComponentSpace = m_nComponentSpace; data.m_dDistToWall = m_nDistToWall; data.m_dInitSpace = m_nInitSpace; data.m_dOrigenalSizeX = m_dOrigenalSizeX; data.m_dOrigenalSizeY = m_dOrigenalSizeY; return TRUE; }