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

金融证券系统

开发平台:

Visual C++

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