VMSM410MF.h 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265
  1. //---------------------------------------------------------------------------
  2. #ifndef VMSM410MFH
  3. #define VMSM410MFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <Controls.hpp>
  7. #include <StdCtrls.hpp>
  8. #include <Forms.hpp>
  9. #include <DB.hpp>
  10. #include <DBClient.hpp>
  11. #include <FMTBcd.hpp>
  12. #include <Provider.hpp>
  13. #include <SqlExpr.hpp>
  14. #include <Menus.hpp>
  15. #include <ExtCtrls.hpp>
  16. #include <Graphics.hpp>
  17. #include <ComCtrls.hpp>
  18. #include <ADODB.hpp>
  19. #include <Dialogs.hpp>
  20. #include <ExtDlgs.hpp>
  21. //---------------------------------------------------------------------------
  22. //---------------------------------------------------------------------------
  23. #include "WindowMsgF.h"
  24. #include "cxButtons.hpp"
  25. #include "cxCalendar.hpp"
  26. #include "cxContainer.hpp"
  27. #include "cxControls.hpp"
  28. #include "cxDropDownEdit.hpp"
  29. #include "cxEdit.hpp"
  30. #include "cxGraphics.hpp"
  31. #include "cxGroupBox.hpp"
  32. #include "cxLabel.hpp"
  33. #include "cxLookAndFeelPainters.hpp"
  34. #include "cxLookAndFeels.hpp"
  35. #include "cxMaskEdit.hpp"
  36. #include "cxPC.hpp"
  37. #include "cxPCdxBarPopupMenu.hpp"
  38. #include "cxSpinEdit.hpp"
  39. #include "cxSplitter.hpp"
  40. #include "cxTextEdit.hpp"
  41. #include "cxTimeEdit.hpp"
  42. #include "dxSkinBlack.hpp"
  43. #include "dxSkinBlue.hpp"
  44. #include "dxSkinCaramel.hpp"
  45. #include "dxSkinCoffee.hpp"
  46. #include "dxSkinDarkRoom.hpp"
  47. #include "dxSkinDarkSide.hpp"
  48. #include "dxSkinFoggy.hpp"
  49. #include "dxSkinGlassOceans.hpp"
  50. #include "dxSkiniMaginary.hpp"
  51. #include "dxSkinLilian.hpp"
  52. #include "dxSkinLiquidSky.hpp"
  53. #include "dxSkinLondonLiquidSky.hpp"
  54. #include "dxSkinMcSkin.hpp"
  55. #include "dxSkinMoneyTwins.hpp"
  56. #include "dxSkinOffice2007Black.hpp"
  57. #include "dxSkinOffice2007Blue.hpp"
  58. #include "dxSkinOffice2007Green.hpp"
  59. #include "dxSkinOffice2007Pink.hpp"
  60. #include "dxSkinOffice2007Silver.hpp"
  61. #include "dxSkinOffice2010Black.hpp"
  62. #include "dxSkinOffice2010Blue.hpp"
  63. #include "dxSkinOffice2010Silver.hpp"
  64. #include "dxSkinsCore.hpp"
  65. #include "dxSkinscxPCPainter.hpp"
  66. #include "dxSkinSeven.hpp"
  67. #include "dxSkinSharp.hpp"
  68. #include "dxSkinSilver.hpp"
  69. #include "dxSkinStardust.hpp"
  70. #include "cxRadioGroup.hpp"
  71. #include "cxClasses.hpp"
  72. #include "cxCustomData.hpp"
  73. #include "cxData.hpp"
  74. #include "cxDataStorage.hpp"
  75. #include "cxDBData.hpp"
  76. #include "cxFilter.hpp"
  77. #include "cxGrid.hpp"
  78. #include "cxGridCustomTableView.hpp"
  79. #include "cxGridCustomView.hpp"
  80. #include "cxGridDBTableView.hpp"
  81. #include "cxGridLevel.hpp"
  82. #include "cxGridTableView.hpp"
  83. #include "cxStyles.hpp"
  84. #include "cxCheckBox.hpp"
  85. #include "FRAME_VmsListF.h"
  86. #include "cxImage.hpp"
  87. #include "cxButtonEdit.hpp"
  88. #include "cxBlobEdit.hpp"
  89. #define MAX_VMS_COLOR 24
  90. class TVMSM410M : public TForm
  91. {
  92. __published: // IDE-managed Components
  93. TTimer *TmrShow;
  94. TShape *ShpTitle;
  95. TcxButton *BtnClose;
  96. TLabel *LblCaption;
  97. TShape *ShpList;
  98. TEdit *EdFocus;
  99. TPanel *PnlBack;
  100. TPanel *PnlLeft;
  101. TcxSplitter *cxSplitter1;
  102. TcxGroupBox *GrpList;
  103. TPanel *Panel1;
  104. TPanel *Panel3;
  105. TcxGroupBox *cxGroupBox1;
  106. TcxGrid *CxList;
  107. TcxGridTableView *TvList;
  108. TcxGridColumn *ColLink1;
  109. TcxGridColumn *ColLink2;
  110. TcxGridColumn *ColLink3;
  111. TcxGridColumn *ColLink4;
  112. TcxGridColumn *ColLink5;
  113. TcxGridColumn *ColLink6;
  114. TcxGridLevel *GlList;
  115. TPanel *PnlMenu;
  116. TcxButton *BtnEdit;
  117. TcxButton *BtnInsert;
  118. TcxButton *BtnDelete;
  119. TcxButton *BtnSave;
  120. TPanel *PnlCmd;
  121. TPanel *PnlInfo2;
  122. TcxLabel *cxLabel18;
  123. TImage *ImgDesc01;
  124. TcxLabel *cxLabel1;
  125. TImage *ImgDesc02;
  126. TcxTextEdit *EdNmbr;
  127. TcxLabel *cxLabel2;
  128. TImage *ImgDesc03;
  129. TcxTextEdit *EdExpl;
  130. TcxButtonEdit *EdImageFileName;
  131. TcxLabel *cxLabel3;
  132. TImage *ImgDesc04;
  133. TcxButton *BtnSaveImgFile;
  134. TSaveDialog *SaveDialog;
  135. TOpenPictureDialog *OpenBmp;
  136. TcxTextEdit *EdVmsCd;
  137. TPanel *Panel2;
  138. TcxGrid *CxImageCell;
  139. TcxGridTableView *TvImageCell;
  140. TcxGridColumn *cxGridColumn1;
  141. TcxGridColumn *ColCellId;
  142. TcxGridColumn *ColCellPosX;
  143. TcxGridColumn *ColCellPosY;
  144. TcxGridColumn *ColArea;
  145. TcxGridColumn *ColIfscId;
  146. TcxGridColumn *ColIfscNm;
  147. TcxGridLevel *GlImageCell;
  148. TImage *ImgDesc09;
  149. TLabel *Label11;
  150. TcxSpinEdit *SeCellId;
  151. TcxButton *BtnCellDelete;
  152. TcxButton *BtnCellApply;
  153. TcxLabel *cxLabel4;
  154. TImage *ImgDesc12;
  155. TImage *ImgTemp;
  156. TImage *ImgPreView;
  157. TcxGridColumn *ColStrNm;
  158. TcxGridColumn *ColEndNm;
  159. TImage *ImgDesc21;
  160. TcxButton *BtnListAdd;
  161. TcxButton *BtnListDelete;
  162. TcxGrid *CxAxis;
  163. TcxGridTableView *TvAxis;
  164. TcxGridColumn *Col01;
  165. TcxGridColumn *Col02;
  166. TcxGridColumn *Col03;
  167. TcxGridColumn *Col04;
  168. TcxGridLevel *GlAxis;
  169. TcxGridColumn *Col00;
  170. TcxGridColumn *Col05;
  171. TLabel *Label1;
  172. TcxCheckBox *ChkExpand;
  173. TLabel *Label2;
  174. TLabel *LblWarn;
  175. TcxLabel *lblText1;
  176. TcxLabel *lblText2;
  177. TcxLabel *lblText3;
  178. TcxSpinEdit *SePosY;
  179. TcxSpinEdit *SePosX;
  180. TLabel *Label10;
  181. TImage *ImgDesc11;
  182. void __fastcall FormShow(TObject *Sender);
  183. void __fastcall TmrShowTimer(TObject *Sender);
  184. void __fastcall BtnCloseClick(TObject *Sender);
  185. void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
  186. void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
  187. void __fastcall BtnEditClick(TObject *Sender);
  188. void __fastcall BtnSaveClick(TObject *Sender);
  189. void __fastcall BtnInsertClick(TObject *Sender);
  190. void __fastcall BtnDeleteClick(TObject *Sender);
  191. void __fastcall BtnSaveImgFileClick(TObject *Sender);
  192. void __fastcall EdImageFileNameClick(TObject *Sender);
  193. void __fastcall OpenBmpCanClose(TObject *Sender, bool &CanClose);
  194. void __fastcall TvListCellDblClick(TcxCustomGridTableView *Sender, TcxGridTableDataCellViewInfo *ACellViewInfo,
  195. TMouseButton AButton, TShiftState AShift,
  196. bool &AHandled);
  197. void __fastcall ColLink2CustomDrawCell(TcxCustomGridTableView *Sender, TcxCanvas *ACanvas,
  198. TcxGridTableDataCellViewInfo *AViewInfo, bool &ADone);
  199. void __fastcall BtnCellDeleteClick(TObject *Sender);
  200. void __fastcall BtnCellApplyClick(TObject *Sender);
  201. void __fastcall ImgPreViewMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
  202. int X, int Y);
  203. void __fastcall ColAreaCustomDrawCell(TcxCustomGridTableView *Sender, TcxCanvas *ACanvas,
  204. TcxGridTableDataCellViewInfo *AViewInfo, bool &ADone);
  205. void __fastcall TvImageCellFocusedRecordChanged(TcxCustomGridTableView *Sender,
  206. TcxCustomGridRecord *APrevFocusedRecord, TcxCustomGridRecord *AFocusedRecord,
  207. bool ANewItemRecordFocusingChanged);
  208. void __fastcall SeCellIdPropertiesChange(TObject *Sender);
  209. void __fastcall TvListFocusedRecordChanged(TcxCustomGridTableView *Sender, TcxCustomGridRecord *APrevFocusedRecord,
  210. TcxCustomGridRecord *AFocusedRecord, bool ANewItemRecordFocusingChanged);
  211. void __fastcall BtnListAddClick(TObject *Sender);
  212. void __fastcall BtnListDeleteClick(TObject *Sender);
  213. void __fastcall ChkExpandClick(TObject *Sender);
  214. void __fastcall Col05CustomDrawCell(TcxCustomGridTableView *Sender, TcxCanvas *ACanvas, TcxGridTableDataCellViewInfo *AViewInfo,
  215. bool &ADone);
  216. private: // User declarations
  217. void __fastcall CommClose();
  218. TcxDataController *m_pGDC;
  219. String FTitle;
  220. bool FUpdate;
  221. bool FNewDb;
  222. bool EditMode;
  223. TList *FListSymb;
  224. DWORD FFileSize;
  225. bool FImageUpdate;
  226. TColor m_Color[MAX_VMS_COLOR];
  227. public:
  228. public: // User declarations
  229. __fastcall TVMSM410M(TComponent* Owner);
  230. void __fastcall FormInit();
  231. void __fastcall ClearSymbloList();
  232. TColor GetDisplayColor(int ASeq);
  233. void __fastcall LoadVmsIfsc();
  234. void __fastcall LoadImageSymbol();
  235. void __fastcall LoadImageSymbolCell(String ANmbr);
  236. void __fastcall DisplayInfo();
  237. bool __fastcall CheckImageUse(String ANmbr);
  238. bool __fastcall DelVmsImage(String ANmbr);
  239. bool __fastcall GetNextVmsImgeId(int &ANmbr);
  240. bool __fastcall UpdateVmsImage(String ANmbr, String AExpl);
  241. bool __fastcall InsertVmsImage(String ANmbr, String AExpl, String AFileName, String ATypeCd);
  242. void __fastcall ChangeEditMode(int AEdit);
  243. void __fastcall UpdateCellColor();
  244. };
  245. //---------------------------------------------------------------------------
  246. extern PACKAGE TVMSM410M *VMSM410M;
  247. //---------------------------------------------------------------------------
  248. #endif