FrmCrsStreamPlayer_oldF.cpp 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #include "AppGlobalF.h"
  4. #include "ITSLangTransF.h"
  5. #pragma hdrstop
  6. #include "FrmFullScreenF.h"
  7. #include "FrmCrsStreamPlayer_oldF.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 resource "*.dfm"
  23. //TFrmCrsStreamPlayer *FrmCrsStreamPlayer;
  24. //---------------------------------------------------------------------------
  25. __fastcall TFrmCrsStreamPlayer_old::TFrmCrsStreamPlayer_old(TComponent* Owner, TCross *ACrossObj)
  26. : TForm(Owner)
  27. {
  28. LangTrans->Translate(this, ITSDb_GetConnection());
  29. FCross = ACrossObj;
  30. FParent = this->Parent;
  31. FFormList = new TObjectList();
  32. PnlCmra->ParentColor = false;
  33. PnlCmra->Color = clBlack;
  34. int defW = 400;
  35. int defH = 300;
  36. int cntY = 1;
  37. int cntX = 1;
  38. int totForm = 1;
  39. if (FCross != NULL) {
  40. Caption = FCross->CROSS_NM;
  41. int camCnt = FCross->FLists.Size();
  42. switch(camCnt) {
  43. case 1: case 2:
  44. cntY = 1;
  45. cntX = camCnt;
  46. break;
  47. case 3: case 4:
  48. cntY = 2;
  49. cntX = 2;
  50. break;
  51. case 5: case 6:
  52. cntY = 2;
  53. cntX = 3;
  54. break;
  55. case 7: case 8:
  56. cntY = 2;
  57. cntX = 4;
  58. break;
  59. default:
  60. cntY = 3;
  61. cntX = 3;
  62. break;
  63. }
  64. totForm = (cntX * cntY);
  65. ClientWidth = (cntX * defW) + cntX-1;
  66. ClientHeight = (cntY * defH) + cntY-1;
  67. int L, T;
  68. camCnt = 0;
  69. FOR_STL(TCrossCam *, pCrsCam, FCross->FLists)
  70. {
  71. L = camCnt % cntX;
  72. T = camCnt / cntY;
  73. TFrmCrsCamra *pCmraForm = new TFrmCrsCamra(this, pCrsCam);
  74. pCmraForm->Parent = FpnlForm;
  75. //pCmraForm->Left = L * defW;
  76. //pCmraForm->Top = T * defH;
  77. FFormList->Add(pCmraForm);
  78. camCnt++;
  79. if (camCnt >= (cntX * cntY))
  80. {
  81. break;
  82. }
  83. }
  84. for (int ii = camCnt; ii < totForm; ii++)
  85. {
  86. L = camCnt % cntX;
  87. T = camCnt / cntY;
  88. TFrmCrsCamra *pCmraForm = new TFrmCrsCamra(this, NULL);
  89. pCmraForm->Parent = FpnlForm;
  90. //pCmraForm->Left = L * defW;
  91. //pCmraForm->Top = T * defH;
  92. FFormList->Add(pCmraForm);
  93. }
  94. }
  95. }
  96. //---------------------------------------------------------------------------
  97. void __fastcall TFrmCrsStreamPlayer_old::FormShow(TObject *Sender)
  98. {
  99. Refresh();
  100. for (int ii = 0; ii < FFormList->Count; ii++)
  101. {
  102. TFrmCrsCamra *pCmraForm = (TFrmCrsCamra*)FFormList->Items[ii];
  103. pCmraForm->Show();
  104. }
  105. }
  106. //---------------------------------------------------------------------------
  107. void __fastcall TFrmCrsStreamPlayer_old::FormClose(TObject *Sender, TCloseAction &Action)
  108. {
  109. Action = caFree;
  110. }
  111. //---------------------------------------------------------------------------
  112. void __fastcall TFrmCrsStreamPlayer_old::FormDestroy(TObject *Sender)
  113. {
  114. ClearFormList();
  115. if (FCross) FCross->FData1 = NULL;
  116. }
  117. //---------------------------------------------------------------------------
  118. void __fastcall TFrmCrsStreamPlayer_old::ClearFormList()
  119. {
  120. while(FFormList->Count)
  121. {
  122. TFrmCrsCamra *pCmraForm = (TFrmCrsCamra*)FFormList->Items[0];
  123. FFormList->Delete(0);
  124. }
  125. FFormList->Clear();
  126. }
  127. //---------------------------------------------------------------------------