RemotePTZCtrl.cpp 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. // RemotePTZCtrl.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "newclient.h"
  5. #include "RemotePTZCtrl.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CRemotePTZCtrl dialog
  13. CRemotePTZCtrl::CRemotePTZCtrl(CWnd* pParent /*=NULL*/)
  14. : CDialog(CRemotePTZCtrl::IDD, pParent)
  15. {
  16. //{{AFX_DATA_INIT(CRemotePTZCtrl)
  17. m_bPreset = FALSE;
  18. m_bCruise = FALSE;
  19. m_bTrack = FALSE;
  20. m_byPreset = 0;
  21. m_byCruise = 0;
  22. m_byTrack = 0;
  23. //}}AFX_DATA_INIT
  24. }
  25. void CRemotePTZCtrl::DoDataExchange(CDataExchange* pDX)
  26. {
  27. CDialog::DoDataExchange(pDX);
  28. //{{AFX_DATA_MAP(CRemotePTZCtrl)
  29. DDX_Control(pDX, IDC_COMBOCHAN, m_ChanCtrl);
  30. DDX_Check(pDX, IDC_CHECK1, m_bPreset);
  31. DDX_Check(pDX, IDC_CHECK2, m_bCruise);
  32. DDX_Check(pDX, IDC_CHECK3, m_bTrack);
  33. DDX_Text(pDX, IDC_EDIT1, m_byPreset);
  34. DDX_Text(pDX, IDC_EDIT2, m_byCruise);
  35. DDX_Text(pDX, IDC_EDIT3, m_byTrack);
  36. //}}AFX_DATA_MAP
  37. }
  38. BEGIN_MESSAGE_MAP(CRemotePTZCtrl, CDialog)
  39. //{{AFX_MSG_MAP(CRemotePTZCtrl)
  40. ON_CBN_SELCHANGE(IDC_COMBOCHAN, OnSelchangeCombochan)
  41. ON_BN_CLICKED(IDEXIT, OnExit)
  42. ON_BN_CLICKED(IDPTZOK, OnPtzok)
  43. //}}AFX_MSG_MAP
  44. END_MESSAGE_MAP()
  45. /////////////////////////////////////////////////////////////////////////////
  46. // CRemotePTZCtrl message handlers
  47. BOOL CRemotePTZCtrl::OnInitDialog()
  48. {
  49. CDialog::OnInitDialog();
  50. // TODO: Add extra initialization here
  51. CString sTemp;
  52. m_ChanCtrl.ResetContent();
  53. for(int i=0; i<m_iChannelnumber; i++)
  54. {
  55. sTemp.Format("ͨµÀ%d", (m_lStartChannel+i));
  56. m_ChanCtrl.AddString(sTemp);
  57. }
  58. m_nChannel = 0;
  59. m_ChanCtrl.SetCurSel(m_nChannel);
  60. m_bPreset = m_lpAlarmIn->byEnablePreset[m_nChannel];
  61. m_bCruise = m_lpAlarmIn->byEnableCruise[m_nChannel];
  62. m_bTrack = m_lpAlarmIn->byEnablePtzTrack[m_nChannel];
  63. m_byPreset = m_lpAlarmIn->byPresetNo[m_nChannel];
  64. m_byCruise = m_lpAlarmIn->byCruiseNo[m_nChannel];
  65. m_byTrack = m_lpAlarmIn->byPTZTrack[m_nChannel];
  66. UpdateData(FALSE);
  67. return TRUE; // return TRUE unless you set the focus to a control
  68. // EXCEPTION: OCX Property Pages should return FALSE
  69. }
  70. void CRemotePTZCtrl::OnSelchangeCombochan()
  71. {
  72. // TODO: Add your control notification handler code here
  73. UpdateData(TRUE);
  74. m_nChannel = m_ChanCtrl.GetCurSel();
  75. m_bPreset = m_lpAlarmIn->byEnablePreset[m_nChannel];
  76. m_bCruise = m_lpAlarmIn->byEnableCruise[m_nChannel];
  77. m_bTrack = m_lpAlarmIn->byEnablePtzTrack[m_nChannel];
  78. m_byPreset = m_lpAlarmIn->byPresetNo[m_nChannel];
  79. m_byCruise = m_lpAlarmIn->byCruiseNo[m_nChannel];
  80. m_byTrack = m_lpAlarmIn->byPTZTrack[m_nChannel];
  81. UpdateData(FALSE);
  82. }
  83. void CRemotePTZCtrl::OnExit()
  84. {
  85. // TODO: Add your control notification handler code here
  86. CDialog::OnCancel();
  87. }
  88. void CRemotePTZCtrl::OnPtzok()
  89. {
  90. // TODO: Add your control notification handler code here
  91. UpdateData(TRUE);
  92. m_nChannel = m_ChanCtrl.GetCurSel();
  93. m_lpAlarmIn->byEnablePreset[m_nChannel] = m_bPreset;
  94. m_lpAlarmIn->byEnableCruise[m_nChannel] = m_bCruise;
  95. m_lpAlarmIn->byEnablePtzTrack[m_nChannel] = m_bTrack;
  96. m_lpAlarmIn->byPresetNo[m_nChannel] = m_byPreset;
  97. m_lpAlarmIn->byCruiseNo[m_nChannel] = m_byCruise;
  98. m_lpAlarmIn->byPTZTrack[m_nChannel] = m_byTrack;
  99. CDialog::OnOK();
  100. }
  101. void CRemotePTZCtrl::OnCancel()
  102. {
  103. // TODO: Add extra cleanup here
  104. // CDialog::OnCancel();
  105. }