GetOneDlg.cpp
Upload User: kairuinn
Upload Date: 2009-02-07
Package Size: 2922k
Code Size: 2k
Category:

Graph program

Development Platform:

Visual C++

  1. // GetOneDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "..//..//Solidgraph.h"
  5. #include "GetOneDlg.h"
  6. #include ".getonedlg.h"
  7. // CGetOneDlg dialog
  8. IMPLEMENT_DYNAMIC(CGetOneDlg, CDialog)
  9. CGetOneDlg::CGetOneDlg(CWnd* pParent /*=NULL*/)
  10. : CDialog(CGetOneDlg::IDD, pParent)
  11. {
  12. m_enable_history = false;
  13. m_was_diasabled = false;
  14. }
  15. CGetOneDlg::~CGetOneDlg()
  16. {
  17. }
  18. void CGetOneDlg::DoDataExchange(CDataExchange* pDX)
  19. {
  20. CDialog::DoDataExchange(pDX);
  21. DDX_Control(pDX, IDC_GET_ONE_COMBO, m_combo);
  22. }
  23. BEGIN_MESSAGE_MAP(CGetOneDlg, CDialog)
  24. ON_WM_ERASEBKGND()
  25. ON_WM_SIZE()
  26. ON_CBN_SELCHANGE(IDC_GET_ONE_COMBO, OnCbnSelchangeGetOneCombo)
  27. END_MESSAGE_MAP()
  28. // CGetOneDlg message handlers
  29. void CGetOneDlg::OnOK()
  30. {
  31. }
  32. void CGetOneDlg::OnCancel()
  33. {
  34. }
  35. IBaseInterfaceOfGetDialogs::DLG_TYPE  CGetOneDlg::GetType()
  36. {
  37. return IBaseInterfaceOfGetDialogs::COMBO_DLG;
  38. }
  39. CWnd*     CGetOneDlg::GetWindow()
  40. {
  41. return this;
  42. }
  43. void      CGetOneDlg::EnableControls(bool enbl)
  44. {
  45. if (enbl)
  46. {
  47. GetDlgItem(IDC_GET_ONE_COMBO)->EnableWindow(m_enable_history);
  48. m_was_diasabled = false;
  49. }
  50. else
  51. {
  52. if (!m_was_diasabled)
  53. {
  54. m_enable_history = GetDlgItem(IDC_GET_ONE_COMBO)->IsWindowEnabled()!=0;
  55. }
  56. GetDlgItem(IDC_GET_ONE_COMBO)->EnableWindow(FALSE);
  57. m_was_diasabled = true;
  58. }
  59. }
  60. void      CGetOneDlg::AddString(const char* str)
  61. {
  62. m_combo.AddString(str);
  63. }
  64. void      CGetOneDlg::RemoveAllStrings()
  65. {
  66. m_combo.ResetContent();
  67. }
  68. void      CGetOneDlg::SetCurString(unsigned int ind)
  69. {
  70. if (ind>=(unsigned int)m_combo.GetCount())
  71. return;
  72. m_combo.SetCurSel(ind);
  73. }
  74. unsigned int  CGetOneDlg::GetCurString()
  75. {
  76. return m_combo.GetCurSel();
  77. }
  78. BOOL CGetOneDlg::OnEraseBkgnd(CDC* pDC)
  79. {
  80. // TODO: Add your message handler code here and/or call default
  81. return  TRUE;//__super::OnEraseBkgnd(pDC);
  82. }
  83. void CGetOneDlg::OnSize(UINT nType, int cx, int cy)
  84. {
  85. __super::OnSize(nType, cx, cy);
  86. if (::IsWindow(m_combo.m_hWnd))
  87. {
  88. CRect rrr;
  89. m_combo.GetWindowRect(rrr);
  90. ScreenToClient(rrr);
  91. m_combo.MoveWindow(rrr.left,rrr.top,
  92. cx-2*rrr.left,rrr.Height());
  93. }
  94. }
  95. void CGetOneDlg::OnCbnSelchangeGetOneCombo()
  96. {
  97. if (global_commander)
  98. global_commander->SendCommanderMessage(ICommander::CM_CHANGE_COMBO,
  99. (IComboPanel*)this);
  100. }