FrmMainF.h 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448
  1. //---------------------------------------------------------------------------
  2. #ifndef FrmMainFH
  3. #define FrmMainFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <Controls.hpp>
  7. #include <StdCtrls.hpp>
  8. #include <Forms.hpp>
  9. #include <ExtCtrls.hpp>
  10. #include <Graphics.hpp>
  11. #include <Menus.hpp>
  12. #include <ImgList.hpp>
  13. #include <ComCtrls.hpp>
  14. #include <jpeg.hpp>
  15. #include <AppEvnts.hpp>
  16. //---------------------------------------------------------------------------
  17. #include <windows.h>
  18. #include <ADODB.hpp>
  19. #include <DB.hpp>
  20. #include "DataTypesF.h"
  21. #include "WindowMsgF.h"
  22. #include "ITSUtilF.h"
  23. #include "AppGlobalF.h"
  24. #include "VitzroCommF.h"
  25. #include <GIFImg.hpp>
  26. #include <OleCtnrs.hpp>
  27. #include "cxClasses.hpp"
  28. #include "cxContainer.hpp"
  29. #include "cxControls.hpp"
  30. #include "cxEdit.hpp"
  31. #include "cxGraphics.hpp"
  32. #include "cxHint.hpp"
  33. #include "cxLabel.hpp"
  34. #include "cxLookAndFeelPainters.hpp"
  35. #include "cxLookAndFeels.hpp"
  36. #include "cxPC.hpp"
  37. #include "cxPCdxBarPopupMenu.hpp"
  38. #include "dxBar.hpp"
  39. #include "dxCustomHint.hpp"
  40. #include "dxRibbon.hpp"
  41. #include "dxRibbonGallery.hpp"
  42. #include "dxRibbonSkins.hpp"
  43. #include "dxRibbonStatusBar.hpp"
  44. #include "dxScreenTip.hpp"
  45. #include "dxSkinBlack.hpp"
  46. #include "dxSkinBlue.hpp"
  47. #include "dxSkinChooserGallery.hpp"
  48. #include "dxSkinsCore.hpp"
  49. #include "dxSkinscxPCPainter.hpp"
  50. #include "dxSkinsdxBarPainter.hpp"
  51. #include "dxSkinsdxRibbonPainter.hpp"
  52. #include "dxSkinsForm.hpp"
  53. #include "dxStatusBar.hpp"
  54. #include "dxTabbedMDI.hpp"
  55. //---------------------------------------------------------------------------
  56. //---------------------------------------------------------------------------
  57. typedef enum
  58. {
  59. isbUser,
  60. isbHint,
  61. isbMsg,
  62. isbGisPos,
  63. isbAlarm,
  64. isbDb,
  65. isbComm,
  66. isbTime,
  67. isbStatus,
  68. } enStatusBar;
  69. //---------------------------------------------------------------------------
  70. class TFrmMain : public TdxCustomRibbonForm//TdxCustomRibbonForm//TForm
  71. {
  72. __published: // IDE-managed Components
  73. TTimer *TmrAppState;
  74. TdxTabbedMDIManager *dxTabbedMDIManager1;
  75. TImageList *ilStatusBarImages;
  76. TcxHintStyleController *cxHintStyleController1;
  77. TTimer *TmrDebugHide;
  78. TTimer *TmrOnShow;
  79. TTimer *TmrPolling;
  80. TcxImageList *cxSmallImages;
  81. TcxImageList *cxLargeImages;
  82. TImageList *ImageList1;
  83. TdxBarManager *dxBarManager;
  84. TdxBar *BarConfig4;
  85. TdxBar *BarTraffic1;
  86. TdxBarLargeButton *NITS0000M;
  87. TdxRibbon *Ribbon;
  88. TdxRibbonTab *TabTraffic;
  89. TdxRibbonTab *TabStatistics;
  90. TdxRibbonTab *TabFacility;
  91. TdxRibbonTab *TabDatabase;
  92. TdxRibbonTab *TabConfig;
  93. TdxSkinController *dxSkinController1;
  94. TdxBar *BarFacility2;
  95. TdxBarLargeButton *NIFM0010M;
  96. TdxBarLargeButton *NIFM0030M;
  97. TADOQuery *ADOQry;
  98. TdxBar *BarConfig3;
  99. TdxBarLargeButton *NCFG0000M;
  100. TcxImageList *cxImageList1;
  101. TdxBar *BarTraffic2;
  102. TdxBar *BarTraffic3;
  103. TdxBar *BarTraffic4;
  104. TdxBarLargeButton *NITS0040M;
  105. TdxBarLargeButton *NITS0010M;
  106. TdxBarLargeButton *NITS0020M;
  107. TdxBarLargeButton *NITS0030M;
  108. TdxBar *BarStatistics1;
  109. TdxBar *BarStatistics2;
  110. TdxBarLargeButton *NIST0010M;
  111. TdxBarLargeButton *NIST0020M;
  112. TdxBarLargeButton *NIAN0020M;
  113. TdxBarLargeButton *NIAN0030M;
  114. TdxBarLargeButton *NIST0030M;
  115. TdxBarLargeButton *NIAN0050M;
  116. TdxBarLargeButton *NIAN0060M;
  117. TdxBarLargeButton *NIAN0040M;
  118. TdxBarLargeButton *NIST0040M;
  119. TdxBarLargeButton *NIAN0010M;
  120. TdxBarLargeButton *NIST0050M;
  121. TdxBarLargeButton *NIST0060M;
  122. TdxBar *BarDatabase1;
  123. TdxBar *BarDatabase2;
  124. TdxBarLargeButton *NIDB0010M;
  125. TdxBarLargeButton *NIDB0020M;
  126. TdxBarLargeButton *NIDB0030M;
  127. TdxBarLargeButton *NIDB0090M;
  128. TdxBarLargeButton *NIDB0060M;
  129. TdxBarLargeButton *NIDB0070M;
  130. TdxBarLargeButton *NIDB0110M;
  131. TdxBarLargeButton *NIDB0050M;
  132. TdxBarLargeButton *NIDB0080M;
  133. TdxBarLargeButton *NIDB0040M;
  134. TdxBar *BarCctv1;
  135. TdxBar *BarVms1;
  136. TdxBarLargeButton *RIFM0040M;
  137. TdxBarLargeButton *RIFM0050M;
  138. TdxBarLargeButton *RIFM0060M;
  139. TdxBarLargeButton *NIDB0100M;
  140. TdxSkinChooserGalleryItem *dxSkinChooserGalleryItem1;
  141. TdxBar *BarConfig1;
  142. TdxBarLargeButton *NCFG0001M;
  143. TdxRibbonTab *TabHistory;
  144. TdxBar *BarHistorySystem;
  145. TdxBar *BarHistoryTraffic;
  146. TdxBar *BarVms2;
  147. TdxBarLargeButton *NIHS0010M;
  148. TdxBarLargeButton *NIHS0020M;
  149. TdxBarLargeButton *NIHS0030M;
  150. TdxBarLargeButton *NIHS0040M;
  151. TdxBarLargeButton *RIHS0060M;
  152. TdxBarLargeButton *RIHS0070M;
  153. TdxBarLargeButton *NIFM0020M;
  154. TdxBarSubItem *dxBarSubItem1;
  155. TdxBar *BarReport;
  156. TdxBarLargeButton *NIRP0010M;
  157. TApplicationEvents *ApplicationEvents1;
  158. TdxBar *BarDsrcRseHistory;
  159. TdxBarLargeButton *NDSRH010M;
  160. TdxBarLargeButton *NDSRH020M;
  161. TdxBarLargeButton *NDSRH030M;
  162. TdxBarLargeButton *NDSRH040M;
  163. TdxBarLargeButton *NDSRH050M;
  164. TdxBar *BarDsrcRseMngr;
  165. TdxBarLargeButton *NDSRM010M;
  166. TdxBarLargeButton *NDSRM020M;
  167. TdxBarLargeButton *NDSRM030M;
  168. TdxBarLargeButton *NDSRM040M;
  169. TdxBar *BarVdsHistory;
  170. TdxBarLargeButton *NVDSH010M;
  171. TdxBar *BarAviHistory;
  172. TdxBarLargeButton *NAVIH010M;
  173. TdxBarLargeButton *NAVIH020Mx;
  174. TdxBarLargeButton *NAVIH030Mx;
  175. TdxBarLargeButton *NAVIH040M;
  176. TdxBarLargeButton *NAVIH050M;
  177. TdxBarLargeButton *NAVIH060M;
  178. TdxBarLargeButton *NAVIH070M;
  179. TdxBarLargeButton *NVDSH020Mx;
  180. TdxBarLargeButton *NVDSH030Mx;
  181. TdxBarLargeButton *NVDSH040M;
  182. TdxBarLargeButton *NVDSH050Mx;
  183. TdxRibbonTab *TabDsrc;
  184. TdxRibbonTab *TabVds;
  185. TdxRibbonTab *TabAvi;
  186. TdxBar *BarVdsStatistics;
  187. TdxBarLargeButton *NVDSS010M;
  188. TdxBarLargeButton *NVDSH060Mx;
  189. TdxBar *BarAviStatistics;
  190. TdxBarLargeButton *NAVIS010M;
  191. TdxBar *BarVdsManager;
  192. TdxBarLargeButton *RVDSM010M;
  193. TdxBarLargeButton *RVDSM020M;
  194. TdxBar *BarAviManager;
  195. TdxBarLargeButton *RAVIM010M;
  196. TdxBarLargeButton *RAVIM020M;
  197. TdxBarLargeButton *NIDB0120M;
  198. TdxBarLargeButton *NIDB0130M;
  199. TdxBarLargeButton *RVDSC010M;
  200. TdxBarLargeButton *RAVIM030M;
  201. TdxBarLargeButton *RAVIC010M;
  202. TdxBar *BarWebCam;
  203. TdxBarLargeButton *NIFM0070M;
  204. TdxBarLargeButton *NIFM0080M;
  205. TdxRibbonTab *TabSms;
  206. TdxBar *BarSms;
  207. TdxBarLargeButton *NSMS0010M;
  208. TdxBarLargeButton *NSMS0020M;
  209. TdxBarLargeButton *NSMS0030M;
  210. TdxBarLargeButton *NIFM0040M;
  211. TdxBarLargeButton *NIFM0050M;
  212. TdxBarLargeButton *NDSRH060M;
  213. TdxBarLargeButton *NDSRH070M;
  214. TdxBarLargeButton *NTST0000M;
  215. TdxRibbonStatusBar *dxStatusBar;
  216. TdxStatusBarContainerControl *dxStatusBarContainer;
  217. TImage *ImgAlarm;
  218. TImage *ImgAlarmNormal;
  219. TcxLabel *LblAlarm;
  220. TdxBarLargeButton *RVMSH300M;
  221. TdxBarLargeButton *RVMSH400M;
  222. TdxBar *BarPark0;
  223. TdxBarLargeButton *NPIS0010M;
  224. TdxRibbonTab *TabVms;
  225. TdxRibbonTab *TabCctv;
  226. TdxBar *BarCctv2;
  227. TdxBarLargeButton *RIHS0050M;
  228. TdxBarLargeButton *NIHS0060M;
  229. TdxBarLargeButton *NAVIS020M;
  230. TdxBarLargeButton *NIST0070M;
  231. TdxBarLargeButton *NIST0080M;
  232. TdxBarLargeButton *NVDSS020M;
  233. TTimer *TmrDbCheck;
  234. TdxRibbonTab *TabParking;
  235. TdxBarLargeButton *NPIS0020M;
  236. TdxBarLargeButton *NPIS0030M;
  237. TdxBar *BarPark1;
  238. TdxBarLargeButton *NPISH010M;
  239. TdxRibbonTab *TabBlackBox;
  240. TdxBar *BarBlackBox0;
  241. TdxBarLargeButton *NBDS0010M;
  242. TdxBarLargeButton *NBDS0020M;
  243. TdxBar *BarBlackBox1;
  244. TdxBarLargeButton *NBDH0010M;
  245. TdxBarLargeButton *NBDH0020M;
  246. TdxRibbonTab *TabTrafficAnalysisSupport;
  247. TdxBar *BarTrafficAnalysisSupport0;
  248. TdxBarLargeButton *NTAS0010M;
  249. TdxBarLargeButton *NTAS0030M;
  250. TdxBarLargeButton *NTAS0040M;
  251. TdxBarLargeButton *NTAS0020M;
  252. TdxBarLargeButton *NTAS0050M;
  253. TdxBar *BarTrafficAnalysisSupport1;
  254. TdxBarLargeButton *NWBH0010M;
  255. TdxBarLargeButton *NAVIH080M;
  256. TdxBarLargeButton *NIDB0140M;
  257. TdxBarLargeButton *NITS0050M;
  258. void __fastcall FormCreate(TObject *Sender);
  259. void __fastcall FormShow(TObject *Sender);
  260. void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
  261. void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
  262. void __fastcall TmrAppStateTimer(TObject *Sender);
  263. void __fastcall OnSkinClick(TObject *Sender);
  264. void __fastcall TmrDebugHideTimer(TObject *Sender);
  265. void __fastcall TmrOnShowTimer(TObject *Sender);
  266. void __fastcall TmrPollingTimer(TObject *Sender);
  267. void __fastcall NITS0000MClick(TObject *Sender);
  268. void __fastcall NIDB0010MClick(TObject *Sender);
  269. void __fastcall NIDB0020MClick(TObject *Sender);
  270. void __fastcall NIDB0030MClick(TObject *Sender);
  271. void __fastcall NIDB0040MClick(TObject *Sender);
  272. void __fastcall NIDB0090MClick(TObject *Sender);
  273. void __fastcall NIDB0060MClick(TObject *Sender);
  274. void __fastcall NIDB0070MClick(TObject *Sender);
  275. void __fastcall NIDB0110MClick(TObject *Sender);
  276. void __fastcall NIDB0050MClick(TObject *Sender);
  277. void __fastcall NIDB0080MClick(TObject *Sender);
  278. void __fastcall NCFG0000MClick(TObject *Sender);
  279. void __fastcall NIDB0100MClick(TObject *Sender);
  280. void __fastcall dxSkinChooserGalleryItem1SkinChanged(TObject *Sender, const UnicodeString ASkinName);
  281. void __fastcall NCFG0001MClick(TObject *Sender);
  282. void __fastcall NIFM0010MClick(TObject *Sender);
  283. void __fastcall NIFM0030MClick(TObject *Sender);
  284. void __fastcall NIFM0020MClick(TObject *Sender);
  285. void __fastcall OnRunProgramClick(TObject *Sender);
  286. void __fastcall NIHS0010MClick(TObject *Sender);
  287. void __fastcall NIHS0030MClick(TObject *Sender);
  288. void __fastcall NIHS0040MClick(TObject *Sender);
  289. void __fastcall NIAN0010MClick(TObject *Sender);
  290. void __fastcall NIAN0020MClick(TObject *Sender);
  291. void __fastcall NIAN0030MClick(TObject *Sender);
  292. void __fastcall NIAN0040MClick(TObject *Sender);
  293. void __fastcall NIST0050MClick(TObject *Sender);
  294. void __fastcall NIST0060MClick(TObject *Sender);
  295. void __fastcall NIAN0060MClick(TObject *Sender);
  296. void __fastcall NIAN0050MClick(TObject *Sender);
  297. void __fastcall NIST0010MClick(TObject *Sender);
  298. void __fastcall NIST0020MClick(TObject *Sender);
  299. void __fastcall NIST0030MClick(TObject *Sender);
  300. void __fastcall NIST0040MClick(TObject *Sender);
  301. void __fastcall NITS0010MClick(TObject *Sender);
  302. void __fastcall NIRP0010MClick(TObject *Sender);
  303. void __fastcall NIHS0020MClick(TObject *Sender);
  304. void __fastcall NITS0040MClick(TObject *Sender);
  305. void __fastcall NITS0020MClick(TObject *Sender);
  306. void __fastcall NITS0030MClick(TObject *Sender);
  307. void __fastcall ApplicationEvents1Message(tagMSG &Msg, bool &Handled);
  308. void __fastcall NDSRH010MClick(TObject *Sender);
  309. void __fastcall NDSRH020MClick(TObject *Sender);
  310. void __fastcall NDSRH030MClick(TObject *Sender);
  311. void __fastcall NDSRH040MClick(TObject *Sender);
  312. void __fastcall NDSRH050MClick(TObject *Sender);
  313. void __fastcall NDSRM010MClick(TObject *Sender);
  314. void __fastcall NDSRM020MClick(TObject *Sender);
  315. void __fastcall NDSRM040MClick(TObject *Sender);
  316. void __fastcall NVDSH010MClick(TObject *Sender);
  317. void __fastcall NAVIH010MClick(TObject *Sender);
  318. void __fastcall NAVIH020MxClick(TObject *Sender);
  319. void __fastcall NAVIH030MxClick(TObject *Sender);
  320. void __fastcall NAVIH040MClick(TObject *Sender);
  321. void __fastcall NAVIH050MClick(TObject *Sender);
  322. void __fastcall NAVIH060MClick(TObject *Sender);
  323. void __fastcall NAVIH070MClick(TObject *Sender);
  324. void __fastcall NVDSH020MxClick(TObject *Sender);
  325. void __fastcall NVDSH030MxClick(TObject *Sender);
  326. void __fastcall NVDSH040MClick(TObject *Sender);
  327. void __fastcall NVDSH050MxClick(TObject *Sender);
  328. void __fastcall NVDSS010MClick(TObject *Sender);
  329. void __fastcall NVDSH060MxClick(TObject *Sender);
  330. void __fastcall NAVIS010MClick(TObject *Sender);
  331. void __fastcall NVDSM010MClick(TObject *Sender);
  332. void __fastcall NVDSM020MClick(TObject *Sender);
  333. void __fastcall NAVIM010MClick(TObject *Sender);
  334. void __fastcall NAVIM020MClick(TObject *Sender);
  335. void __fastcall NIDB0120MClick(TObject *Sender);
  336. void __fastcall NIDB0130MClick(TObject *Sender);
  337. void __fastcall NDSRM030MClick(TObject *Sender);
  338. void __fastcall NSMS0010MClick(TObject *Sender);
  339. void __fastcall NSMS0020MClick(TObject *Sender);
  340. void __fastcall NSMS0030MClick(TObject *Sender);
  341. void __fastcall NIFM0040MClick(TObject *Sender);
  342. void __fastcall OnAlarmDblClick(TObject *Sender);
  343. void __fastcall NIFM0050MClick(TObject *Sender);
  344. void __fastcall NDSRH060MClick(TObject *Sender);
  345. void __fastcall NDSRH070MClick(TObject *Sender);
  346. void __fastcall NTST0000MClick(TObject *Sender);
  347. void __fastcall NPIS0010MClick(TObject *Sender);
  348. void __fastcall NIHS0060MClick(TObject *Sender);
  349. void __fastcall NAVIS020MClick(TObject *Sender);
  350. void __fastcall NIST0070MClick(TObject *Sender);
  351. void __fastcall NIST0080MClick(TObject *Sender);
  352. void __fastcall NVDSS020MClick(TObject *Sender);
  353. void __fastcall TmrDbCheckTimer(TObject *Sender);
  354. void __fastcall NPIS0030MClick(TObject *Sender);
  355. void __fastcall NPIS0020MClick(TObject *Sender);
  356. void __fastcall NPISH010MClick(TObject *Sender);
  357. void __fastcall NBDS0010MClick(TObject *Sender);
  358. void __fastcall NBDS0020MClick(TObject *Sender);
  359. void __fastcall NBDH0010MClick(TObject *Sender);
  360. void __fastcall NBDH0020MClick(TObject *Sender);
  361. void __fastcall NTAS0010MClick(TObject *Sender);
  362. void __fastcall NTAS0020MClick(TObject *Sender);
  363. void __fastcall NTAS0030MClick(TObject *Sender);
  364. void __fastcall NTAS0040MClick(TObject *Sender);
  365. void __fastcall NTAS0050MClick(TObject *Sender);
  366. void __fastcall OnMenuMouseMove(TObject *Sender, TShiftState Shift, int X, int Y);
  367. void __fastcall NWBH0010MClick(TObject *Sender);
  368. void __fastcall NAVIH080MClick(TObject *Sender);
  369. void __fastcall NIDB0140MClick(TObject *Sender);
  370. void __fastcall NITS0050MClick(TObject *Sender);
  371. void __fastcall RVDSM010MClick(TObject *Sender);
  372. void __fastcall RVDSM020MClick(TObject *Sender);
  373. private: // User declarations
  374. int FLogoutTick;
  375. public:
  376. TPollingUnit FPollTraffic00; // 링크소통정보(전체)
  377. TPollingUnit FPollTraffic01; // 링크소통정보
  378. TPollingUnit FPollTraffic02; // 서비스링크소통정보
  379. TPollingUnit FPollTraffic03; // 도로소통정보
  380. TPollingUnit FPollTraffic04; // 반복정체구간
  381. TPollingUnit FPollTraffic05; // UTIS운영정보
  382. TPollingUnit FPollStatus01; // 시설물상태정보
  383. TPollingUnit FPollStatus02; // 프로세스상태정보
  384. TPollingUnit FPollStatus03; // 돌발정보
  385. TPollingUnit FPollEvent01; // 블랙박스이벤트
  386. TPollingUnit FPollVilgFrcs; // 기상정보
  387. void __fastcall SetColorScheme(String ASkinName);
  388. public: // User declarations
  389. __fastcall TFrmMain(TComponent* Owner);
  390. void __fastcall OnAppHint(TObject *Sender);
  391. void __fastcall OnAppException(TObject *Sender, Exception *exception);
  392. void __fastcall ExecuteItsProgram(String AClassName, String AExeName, String AOption);
  393. void __fastcall TermItsProgram(String AClassName, String AExeName);
  394. void __fastcall CommClose();
  395. void __fastcall CloseAllWindow();
  396. void __fastcall DebugMsg(String AMsg);
  397. bool __fastcall GetUserMenuRight(String AUserId, String AUserRight);
  398. void __fastcall InitStatusBar();
  399. void __fastcall UpdateCommStatus();
  400. void __fastcall UpdateStatusBar();
  401. void __fastcall UpdateThreadStatus(bool ARequest, bool APing=true);
  402. void __fastcall UpdateDbStatus(bool ASelect);
  403. bool __fastcall StartJobThread();
  404. void __fastcall TerminateJobThread();
  405. bool __fastcall PostJobMessage(UINT nMsg, int WParam=0, int LParam=0);
  406. HWND __fastcall FindChildWindow(String sFormName);
  407. void __fastcall OnRefreshMessage(WPARAM AWParam, LPARAM ALParam);
  408. void __fastcall OnDatabaseMessage(WPARAM AWParam, LPARAM ALParam);
  409. void __fastcall OnUdpDataRecvMessage(tagMSG &Msg);
  410. void __fastcall OnPollingThreadDone(TObject *Sender);
  411. void __fastcall ShowFacilityStatus();
  412. void __fastcall ShowAutoIncidentInfo();
  413. bool __fastcall IsDbAlive();
  414. bool __fastcall DbConnect();
  415. bool __fastcall UpdateExplorerEmulatorVersion(String AAppName);
  416. void __fastcall OnUdpDataRecvMessage(TMessage &Msg);
  417. BEGIN_MESSAGE_MAP
  418. MESSAGE_HANDLER(WM_VCOMMDATA_RECV, TMessage, OnUdpDataRecvMessage)
  419. END_MESSAGE_MAP(TForm)
  420. };
  421. //---------------------------------------------------------------------------
  422. extern PACKAGE TFrmMain *FrmMain;
  423. //---------------------------------------------------------------------------
  424. #endif