//--------------------------------------------------------------------------- #ifndef TVmsFormFH #define TVmsFormFH //--------------------------------------------------------------------------- #include #include #include #include #include #include #include #include #include "LibSTLF.hpp" //--------------------------------------------------------------------------- #include "VitzroCommF.h" #include "ITSLogF.h" //--------------------------------------------------------------------------- #define MAX_VMS_OBJ_LIST 64 /* ÃÖ´ë VMS ¿ÀºêÁ§Æ® ¸®½ºÆ® °¹¼ö */ class TVmsFormObj { public: TVmsFormObj(); ~TVmsFormObj(); public: int ObjectKind; /* °´Ã¼Á¾·ù */ int ObjectType; /* °´Ã¼Å¸ÀÔ */ int ObjectSize; /* °´Ã¼Å©±â */ int IsBlinking; /* Á¡¸ê ¿©ºÎ */ int PosX; /* À§Ä¡ X */ int PosY; /* À§Ä¡ Y */ int Width; /* °´Ã¼³ÐÀÌ */ int Height; /* °´Ã¼³ôÀÌ */ int BkColor; /* °´Ã¼¹è°æ»ö»ó */ int TextFontName; /* ÆùÆ®À̸§ */ //TODO AnsiString StrTextFontName; int TextFontColor; /* ÆùÆ®»ö»ó */ int TextFontSize; /* ÆùƮũ±â */ int TextFontBold; /* ÆùÆ®±½±â */ int TextAlign; /* ¹®ÀÚ¿­Á¤¿­¹æ½Ä */ AnsiString TextData; /* ¹®ÀÚ¿­µ¥ÀÌÅÍ */ AnsiString ImageId; /* À̹ÌÁö¾ÆÀ̵ð */ AnsiString ImageType; /* À̹ÌÁö ŸÀÔ */ //int ObjectId; /* Æû°´Ã¼ID */ AnsiString IFSC_ID; TImage *pImageData; /* À̹ÌÁöµ¥ÀÌÅÍ */ TMemoryStream *pImageStream; /* À̹ÌÁöµ¥ÀÌÅÍ ¹öÆÛ */ public: void Clear(); TImage *NewImage(); }; //--------------------------------------------------------------------------- class TVmsForm { public: TVmsForm(); ~TVmsForm(); public: int ScenarioSeq; /* Æû Ç¥Ãâ¼ø¼­ */ AnsiString FormId; /* Æû ID */ int DisplayTime; /* Ç¥Ãâ½Ã°£(ÃÊ) */ AnsiString DisplayMode; /* Ç¥Ãâ±â´É */ AnsiString DisplayDir; /* Ç¥Ãâ¹æÇâ */ int FormKind; /* Æû Á¾·ù */ int BkColor; /* ¹è°æ»ö»ó */ int Width; /* Æû³ÐÀÌ */ int Height; /* Æû³ôÀÌ */ bool SvcRes; /* Á¦°ø°á°ú */ bool FtpRes; /* Á¦°ø°á°ú */ AnsiString TrfBakImgId; TCriticalSection *pCriticalSection; public: int FTotal; int FObjects; IntMap FLists; void Lock() { pCriticalSection->Enter(); } void UnLock() { pCriticalSection->Leave(); }; int Count() { return FObjects; } int Total() { return FTotal; } void Clear(); TVmsFormObj *GetItem(int AIdx); int AddFormObject(TVmsFormObj *AFormObj); TVmsFormObj *AddFormObject(); void Init(int AWidth, int AHeight); void FormClear(TColor ABkColor); Graphics::TBitmap *pBitmap; /* À̹ÌÁöµ¥ÀÌÅÍ */ TMemoryStream *pStream; /* À̹ÌÁöµ¥ÀÌÅÍ ¹öÆÛ */ }; //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- class TVmsFormManager { public: TVmsFormManager(); ~TVmsFormManager(); private: public: void Lock() { FLists.Lock(); } void UnLock() { FLists.UnLock(); } public: int FormWidth; int FormHeight; int FTotal; int FObjects; IntMap FLists; int Count() { return FObjects; } int Total() { return FTotal; } void Clear(); TVmsForm *GetItem(int AIdx); int AddForm(TVmsForm *AForm); TVmsForm *AddForm(); }; //--------------------------------------------------------------------------- //extern TVmsFormManager *VmsFormManager; //--------------------------------------------------------------------------- #endif