MTMDlg.cpp
上传用户:zhanglf88
上传日期:2013-11-19
资源大小:6036k
文件大小:3k
源码类别:

金融证券系统

开发平台:

Visual C++

  1. // MTMDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "MTMDlg.h"
  5. #ifdef _DEBUG
  6. #define new DEBUG_NEW
  7. #undef THIS_FILE
  8. static char THIS_FILE[] = __FILE__;
  9. #endif
  10. /////////////////////////////////////////////////////////////////////////////
  11. // CMTMDlg dialog
  12. CMTMDlg::CMTMDlg(CWnd* pParent, CMTM * pMTM )
  13. {
  14. CParamDlg::CParamDlg(CMTMDlg::IDD, pParent);
  15. //{{AFX_DATA_INIT(CMTMDlg)
  16. m_nDays = 0;
  17. m_nMADays = 0;
  18. //}}AFX_DATA_INIT
  19. m_pMTM = pMTM;
  20. }
  21. void CMTMDlg::DoDataExchange(CDataExchange* pDX)
  22. {
  23. CParamDlg::DoDataExchange(pDX);
  24. //{{AFX_DATA_MAP(CMTMDlg)
  25. DDX_Control(pDX, IDC_DEADFORK, m_cmbDeadFork);
  26. DDX_Control(pDX, IDC_GOLDENFORK, m_cmbGoldenFork);
  27. DDX_Control(pDX, IDC_STATIC_NAME, m_staticName);
  28. DDX_Text(pDX, IDC_DAYS, m_nDays);
  29. DDX_Text(pDX, IDC_MADAYS, m_nMADays);
  30. //}}AFX_DATA_MAP
  31. }
  32. BEGIN_MESSAGE_MAP(CMTMDlg, CParamDlg)
  33. //{{AFX_MSG_MAP(CMTMDlg)
  34. ON_BN_CLICKED(IDC_DEFAULT, OnDefault)
  35. ON_BN_CLICKED(IDC_PARAMHELP, OnHelp)
  36. //}}AFX_MSG_MAP
  37. END_MESSAGE_MAP()
  38. /////////////////////////////////////////////////////////////////////////////
  39. // CMTMDlg message handlers
  40. BOOL CMTMDlg::OnInitDialog() 
  41. {
  42. CParamDlg::OnInitDialog();
  43. ASSERT( m_pMTM );
  44. // TODO: Add extra initialization here
  45. RefreshData( FALSE );
  46. return TRUE;  // return TRUE unless you set the focus to a control
  47.               // EXCEPTION: OCX Property Pages should return FALSE
  48. }
  49. void CMTMDlg::OnCancel() 
  50. {
  51. }
  52. void CMTMDlg::OnOK() 
  53. {
  54. // TODO: Add extra validation here
  55. if( !RefreshData( TRUE ) )
  56. m_pMTM->SetDefaultParameters( );
  57. CParamDlg::OnOK();
  58. }
  59. void CMTMDlg::OnDefault() 
  60. {
  61. // TODO: Add your control notification handler code here
  62. m_pMTM->SetDefaultParameters( );
  63. RefreshData( FALSE );
  64. }
  65. void CMTMDlg::OnHelp() 
  66. {
  67. ParamHelp( STT_MTM );
  68. }
  69. BOOL CMTMDlg::RefreshData( BOOL bSaveAndValidate )
  70. {
  71. if( !m_pMTM->IsValidParameters() )
  72. m_pMTM->SetDefaultParameters();
  73. if( bSaveAndValidate )
  74. {
  75. UpdateData( TRUE );
  76. m_pMTM->m_nDays = m_nDays;
  77. m_pMTM->m_nMADays = m_nMADays;
  78. m_pMTM->m_itsGoldenFork = m_cmbGoldenFork.GetSelect();
  79. m_pMTM->m_itsDeadFork = m_cmbDeadFork.GetSelect();
  80. return m_pMTM->IsValidParameters();
  81. }
  82. else
  83. {
  84. m_staticName.SetWindowText( AfxGetSTTFullName(STT_MTM) );
  85. m_nDays = m_pMTM->m_nDays;
  86. m_nMADays = m_pMTM->m_nMADays;
  87. m_cmbGoldenFork.ResetAndSelect( m_pMTM->m_itsGoldenFork );
  88. m_cmbDeadFork.ResetAndSelect( m_pMTM->m_itsDeadFork );
  89. UpdateData( FALSE );
  90. }
  91. return TRUE;
  92. }