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

金融证券系统

开发平台:

Visual C++

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