MatColumn.cpp 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. // MatColumn.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "newclient.h"
  5. #include "MatColumn.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. LONG g_lCAmount = 0;
  12. LONG g_lCAmount1 = 0;
  13. CMatColumn *MatColumn;
  14. void CALLBACK fColLocalDataCallBack(LONG lUserID, char *sIPAddr, LONG lColumnAmout, char *pRecvDataBuffer,DWORD dwBufSize,DWORD dwUser)
  15. {
  16. // NET_DVR_MATRIX_COLUMN_ELEMENT stru;
  17. // int index = 0;
  18. // CString sTemp;
  19. // if (lColumnAmout <= 0)
  20. // {
  21. // AfxMessageBox("无本地矩阵列信息!");
  22. // return ;
  23. // }
  24. // if ((g_lCAmount <= lColumnAmout) && (lColumnAmout > 0))
  25. // {
  26. // if (dwBufSize == sizeof(NET_DVR_MATRIX_COLUMN_ELEMENT))
  27. // {
  28. // memcpy(&stru, pRecvDataBuffer, dwBufSize);
  29. //
  30. // sTemp.Format("%d", stru.dwLocalDispChanNum);
  31. // index = MatColumn->m_List.InsertItem(MatColumn->m_List.GetItemCount(), sTemp, 0);
  32. // sTemp.Format("%d", stru.dwGlobalDispChanNum);
  33. // MatColumn->m_List.SetItemText(index, 1, sTemp);
  34. //
  35. // MatColumn->m_iColumnNum++;
  36. // }
  37. // g_lCAmount++;
  38. // }
  39. // if (lColumnAmout == g_lCAmount)
  40. // {
  41. // AfxMessageBox("本地矩阵列信息已经全部列完!");
  42. // }
  43. }
  44. void CALLBACK fColGlobalDataCallBack(LONG lUserID, char *sIPAddr, LONG lColumnAmout, char *pRecvDataBuffer,DWORD dwBufSize,DWORD dwUser)
  45. {
  46. // NET_DVR_MATRIX_GLOBAL_COLUMN_ELEMENT stru;
  47. // CString sTemp;
  48. // int index = 0;
  49. // if (lColumnAmout <= 0)
  50. // {
  51. // AfxMessageBox("无全局矩阵列信息!");
  52. // return;
  53. // }
  54. // if ((g_lCAmount1 <= lColumnAmout) && (lColumnAmout > 0))
  55. // {
  56. // if (dwBufSize == sizeof(NET_DVR_MATRIX_GLOBAL_COLUMN_ELEMENT))
  57. // {
  58. // memcpy(&stru, pRecvDataBuffer, dwBufSize);
  59. //
  60. // if (stru.dwConflictTag)
  61. // {
  62. // sTemp.Format("冲突");
  63. // }
  64. // else
  65. // {
  66. // sTemp.Format("不冲突");
  67. // }
  68. // index = MatColumn->m_list1.InsertItem(MatColumn->m_list1.GetItemCount(), sTemp, 0);
  69. // sTemp.Format("%d", stru.dwConflictGloDispChan);
  70. // MatColumn->m_list1.SetItemText(MatColumn->m_iColumnNum1, 1, sTemp);
  71. // sTemp.Format("%d", stru.struColumnInfo.dwLocalDispChanNum);
  72. // MatColumn->m_list1.SetItemText(MatColumn->m_iColumnNum1, 2, sTemp);
  73. // sTemp.Format("%d", stru.struColumnInfo.dwGlobalDispChanNum);
  74. // MatColumn->m_list1.SetItemText(MatColumn->m_iColumnNum1, 3, sTemp);
  75. //
  76. // MatColumn->m_iColumnNum1++;
  77. // }
  78. // g_lCAmount1++;
  79. // }
  80. // if (lColumnAmout == g_lCAmount1)
  81. // {
  82. // AfxMessageBox("全局矩阵列信息已经全部列完!");
  83. // }
  84. }
  85. /////////////////////////////////////////////////////////////////////////////
  86. // CMatColumn dialog
  87. CMatColumn::CMatColumn(CWnd* pParent /*=NULL*/)
  88. : CDialog(CMatColumn::IDD, pParent)
  89. {
  90. //{{AFX_DATA_INIT(CMatColumn)
  91. m_GlobalChan = 0;
  92. m_LocalChan = 0;
  93. //}}AFX_DATA_INIT
  94. }
  95. void CMatColumn::DoDataExchange(CDataExchange* pDX)
  96. {
  97. CDialog::DoDataExchange(pDX);
  98. //{{AFX_DATA_MAP(CMatColumn)
  99. DDX_Control(pDX, IDC_LIST2, m_list1);
  100. DDX_Control(pDX, IDC_LIST, m_List);
  101. DDX_Text(pDX, IDC_EDITGLOBALCHAN, m_GlobalChan);
  102. DDX_Text(pDX, IDC_EDITLOCALCHAN, m_LocalChan);
  103. //}}AFX_DATA_MAP
  104. }
  105. BEGIN_MESSAGE_MAP(CMatColumn, CDialog)
  106. //{{AFX_MSG_MAP(CMatColumn)
  107. ON_BN_CLICKED(IDC_BUTEXIT, OnButexit)
  108. ON_BN_CLICKED(IDC_BUTLOCALSET, OnButlocalset)
  109. ON_BN_CLICKED(IDC_BUTLOCALGET, OnButlocalget)
  110. ON_BN_CLICKED(IDC_BUTGLOBALGET, OnButglobalget)
  111. //}}AFX_MSG_MAP
  112. END_MESSAGE_MAP()
  113. /////////////////////////////////////////////////////////////////////////////
  114. // CMatColumn message handlers
  115. void CMatColumn::OnCancel()
  116. {
  117. // TODO: Add extra cleanup here
  118. // CDialog::OnCancel();
  119. }
  120. void CMatColumn::OnOK()
  121. {
  122. // TODO: Add extra validation here
  123. // CDialog::OnOK();
  124. }
  125. BOOL CMatColumn::OnInitDialog()
  126. {
  127. CDialog::OnInitDialog();
  128. // TODO: Add extra initialization here
  129. m_List.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
  130. m_List.InsertColumn(0,"本地显示通道",LVCFMT_LEFT,120,-1);
  131. m_List.InsertColumn(1,"全局显示通道",LVCFMT_LEFT,120,-1);
  132. m_iColumnNum = 0;
  133. m_iSelChan = 0;
  134. m_list1.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
  135. m_list1.InsertColumn(0,"是否冲突",LVCFMT_LEFT,120,-1);
  136. m_list1.InsertColumn(1,"与之冲突的通道号",LVCFMT_LEFT,120,-1);
  137. m_list1.InsertColumn(2,"本地显示通道",LVCFMT_LEFT,120,-1);
  138. m_list1.InsertColumn(3,"全局显示通道",LVCFMT_LEFT,120,-1);
  139. // ZeroMemory(&stru, sizeof(NET_DVR_MATRIX_COLUMN_ELEMENT));
  140. MatColumn = this;
  141. UpdateData(FALSE);
  142. return TRUE; // return TRUE unless you set the focus to a control
  143. // EXCEPTION: OCX Property Pages should return FALSE
  144. }
  145. void CMatColumn::OnButexit()
  146. {
  147. // TODO: Add your control notification handler code here
  148. CDialog::OnOK();
  149. }
  150. void CMatColumn::OnButlocalset()
  151. {
  152. // TODO: Add your control notification handler code here
  153. // UpdateData(TRUE);
  154. // stru.dwGlobalDispChanNum = m_GlobalChan;
  155. // stru.dwLocalDispChanNum = m_LocalChan;
  156. //
  157. // if (!NET_DVR_MatrixSetLocalColumnInfo(m_lServerID, 1, &stru))
  158. // {
  159. // CString sTemp;
  160. // sTemp.Format("ERROR: NET_DVR_MatrixSetLocalColumnInfo = %d \n", NET_DVR_GetLastError());
  161. // AfxMessageBox(sTemp);
  162. // return;
  163. // }
  164. // MessageBox("设置成功!");
  165. }
  166. void CMatColumn::OnButlocalget()
  167. {
  168. // TODO: Add your control notification handler code here
  169. // m_iColumnNum = 0;
  170. // g_lCAmount = 0;
  171. // m_List.DeleteAllItems();
  172. // if (!NET_DVR_MatrixGetLocalColumnInfo(m_lServerID, fColLocalDataCallBack, 0))
  173. // {
  174. // CString sTemp;
  175. // sTemp.Format("ERROR: NET_DVR_MatrixGetLocalColumnInfo = %d \n", NET_DVR_GetLastError());
  176. // AfxMessageBox(sTemp);
  177. // }
  178. }
  179. void CMatColumn::OnButglobalget()
  180. {
  181. // TODO: Add your control notification handler code here
  182. // m_iColumnNum1 = 0;
  183. // g_lCAmount1 = 0;
  184. // m_list1.DeleteAllItems();
  185. // if (!NET_DVR_MatrixGetGlobalColumnInfo(m_lServerID, fColGlobalDataCallBack, 0))
  186. // {
  187. // CString sTemp;
  188. // sTemp.Format("ERROR: NET_DVR_MatrixGetGlobalColumnInfo = %d \n", NET_DVR_GetLastError());
  189. // AfxMessageBox(sTemp);
  190. // }
  191. }