FrmCrsStreamPlayerF.cpp 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #include "AppGlobalF.h"
  4. #include "ITSLangTransF.h"
  5. #pragma hdrstop
  6. #include "FrmFullScreenF.h"
  7. #include "FrmCrsStreamPlayerF.h"
  8. #include "FrmCrsCmraF.h"
  9. //---------------------------------------------------------------------------
  10. #pragma package(smart_init)
  11. #pragma link "cxContainer"
  12. #pragma link "cxControls"
  13. #pragma link "cxEdit"
  14. #pragma link "cxGraphics"
  15. #pragma link "cxLabel"
  16. #pragma link "cxLookAndFeelPainters"
  17. #pragma link "cxLookAndFeels"
  18. #pragma link "dxSkinBlack"
  19. #pragma link "dxSkinBlue"
  20. #pragma link "dxSkinsCore"
  21. #pragma link "dxSkinMcSkin"
  22. #pragma link "FRAME_CameraF"
  23. #pragma resource "*.dfm"
  24. //TFrmCrsStreamPlayer *FrmCrsStreamPlayer;
  25. //---------------------------------------------------------------------------
  26. __fastcall TFrmCrsStreamPlayer::TFrmCrsStreamPlayer(TComponent* Owner, TCross *ACrossObj)
  27. : TForm(Owner)
  28. {
  29. LangTrans->Translate(this, ITSDb_GetConnection());
  30. FCross = ACrossObj;
  31. FParent = this->Parent;
  32. FFormList = new TObjectList();
  33. if (FCross != NULL) {
  34. Caption = FCross->CROSS_NM;
  35. PnlCrs->Caption = FCross->CROSS_NM;
  36. PnlCrsTitle->Caption = FCross->CROSS_NM;
  37. FOR_STL(TCrossCam *, pCrsCam, FCross->FLists)
  38. {
  39. TFRAMECamera *pFrameCamera = (TFRAMECamera*)FindComponent("FRAMECamera" + pCrsCam->DIRECTION);
  40. if (pFrameCamera) {
  41. pFrameCamera->Init(pCrsCam->CAM_ID, pCrsCam->CAM_ID, pCrsCam->CAM_NM, pCrsCam->RTSP_URL);
  42. }
  43. }
  44. }
  45. }
  46. //---------------------------------------------------------------------------
  47. void __fastcall TFrmCrsStreamPlayer::FormShow(TObject *Sender)
  48. {
  49. Refresh();
  50. }
  51. //---------------------------------------------------------------------------
  52. void __fastcall TFrmCrsStreamPlayer::FormClose(TObject *Sender, TCloseAction &Action)
  53. {
  54. Action = caFree;
  55. }
  56. //---------------------------------------------------------------------------
  57. void __fastcall TFrmCrsStreamPlayer::FormDestroy(TObject *Sender)
  58. {
  59. ClearFormList();
  60. if (FCross) {
  61. FOR_STL(TCrossCam *, pCrsCam, FCross->FLists)
  62. {
  63. TFRAMECamera *pFrameCamera = (TFRAMECamera*)FindComponent("FRAMECamera" + pCrsCam->DIRECTION);
  64. if (pFrameCamera) {
  65. pFrameCamera->Disconnect();
  66. }
  67. }
  68. FCross->FData1 = NULL;
  69. }
  70. }
  71. //---------------------------------------------------------------------------
  72. void __fastcall TFrmCrsStreamPlayer::ClearFormList()
  73. {
  74. while(FFormList->Count)
  75. {
  76. TFrmCrsCamra *pCmraForm = (TFrmCrsCamra*)FFormList->Items[0];
  77. FFormList->Delete(0);
  78. }
  79. FFormList->Clear();
  80. }
  81. //---------------------------------------------------------------------------