www.pudn.com > IFSEditor.rar > AddEditDlg.cpp


// AddEditDlg.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "IFSEditor.h" 
#include "AddEditDlg.h" 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
// CAddEditDlg dialog 
 
 
CAddEditDlg::CAddEditDlg(CWnd* pParent /*=NULL*/) 
	: CDialog(CAddEditDlg::IDD, pParent) 
{ 
	//{{AFX_DATA_INIT(CAddEditDlg) 
	m_By = 0.0; 
	m_Bx = 0.0; 
	m_Kxx = 0.0; 
	m_Kxy = 0.0; 
	m_Kyx = 0.0; 
	m_Kyy = 0.0; 
	m_Pi = 0.0; 
	//}}AFX_DATA_INIT 
	m_szTitle.Format(""); 
} 
 
 
void CAddEditDlg::DoDataExchange(CDataExchange* pDX) 
{ 
	CDialog::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(CAddEditDlg) 
	DDX_Text(pDX, IDC_EDITBY, m_By); 
	DDX_Text(pDX, IDC_EDITBX, m_Bx); 
	DDX_Text(pDX, IDC_EDITKXX, m_Kxx); 
	DDX_Text(pDX, IDC_EDITKXY, m_Kxy); 
	DDX_Text(pDX, IDC_EDITKYX, m_Kyx); 
	DDX_Text(pDX, IDC_EDITKYY, m_Kyy); 
	DDX_Text(pDX, IDC_EDITPI, m_Pi); 
	DDV_MinMaxDouble(pDX, m_Pi, 0., 1.); 
	//}}AFX_DATA_MAP 
} 
 
 
BEGIN_MESSAGE_MAP(CAddEditDlg, CDialog) 
	//{{AFX_MSG_MAP(CAddEditDlg) 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CAddEditDlg message handlers 
 
BOOL CAddEditDlg::OnInitDialog()  
{ 
	CDialog::OnInitDialog(); 
	 
	// TODO: Add extra initialization here 
	SetWindowText(m_szTitle); 
	 
	return TRUE;  // return TRUE unless you set the focus to a control 
	              // EXCEPTION: OCX Property Pages should return FALSE 
} 
 
void CAddEditDlg::OnOK()  
{ 
	if(UpdateData()) 
	{ 
		// Only 6 precision is supported 
		if(m_Bx > 0) 
		{ 
			m_Bx = (int)(m_Bx * 1000000 + 0.5); 
		} 
		else if(m_Bx < 0) 
		{ 
			m_Bx = (int)(m_Bx * 1000000 - 0.5) / 1000000.0; 
		} 
		if(m_By > 0) 
		{ 
			m_By = (int)(m_By * 1000000 + 0.5) / 1000000.0; 
		} 
		else if(m_By < 0) 
		{ 
			m_By = (int)(m_By * 1000000 - 0.5) / 1000000.0; 
		} 
		if(m_Kxx > 0) 
		{ 
			m_Kxx = (int)(m_Kxx * 1000000 + 0.5) / 1000000.0; 
		} 
		else if(m_Kxx < 0) 
		{ 
			m_Kxx = (int)(m_Kxx * 1000000 - 0.5) / 1000000.0; 
		} 
		if(m_Kyx > 0) 
		{ 
			m_Kyx = (int)(m_Kyx * 1000000 + 0.5) / 1000000.0; 
		} 
		else if(m_Kyx < 0) 
		{ 
			m_Kyx = (int)(m_Kyx * 1000000 - 0.5) / 1000000.0; 
		} 
		if(m_Kxy > 0) 
		{ 
			m_Kxy = (int)(m_Kxy * 1000000 + 0.5) / 1000000.0; 
		} 
		else if(m_Kxy < 0) 
		{ 
			m_Kxy = (int)(m_Kxy * 1000000 - 0.5) / 1000000.0; 
		} 
		if(m_Kyy > 0) 
		{ 
			m_Kyy = (int)(m_Kyy * 1000000 + 0.5) / 1000000.0; 
		} 
		else if(m_Kyy < 0) 
		{ 
			m_Kyy = (int)(m_Kyy * 1000000 - 0.5) / 1000000.0; 
		} 
		if(m_Pi > 0) 
		{ 
			m_Pi = (int)(m_Pi * 1000000 + 0.5) / 1000000.0; 
		} 
		else if(m_Pi < 0) 
		{ 
			m_Pi = (int)(m_Pi * 1000000 - 0.5) / 1000000.0; 
		} 
		EndDialog(IDOK); 
	} 
}