#pragma once #include "ControlWZ.h" //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- // CCtrlTabWZ Class //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- typedef std::map STD_TAB_MAP; enum ENUM_TAB_POS {ETAB_POS_TOP, ETAB_POS_LEFT, ETAB_POS_BOTTOM, ETAB_POS_RIGHT}; class CCtrlTabWZ : public CControlWZ { public: CCtrlTabWZ(); virtual ~CCtrlTabWZ(); virtual bool OnCreate(DWORD dwCtrlID,DWORD dwStyle,HWND hParentWnd,HINSTANCE hInstance,RECT* rtSize,void* pDraw); virtual void OnDestroy(); virtual bool OnDraw(bool bl); virtual void OnInitialize(); virtual bool MoveWindowWZ(float fx, float fy, float fWidth, float fHeight); virtual void ReleaseImage(); //. ÀúÀå/·Îµå ÇÔ¼öµé. virtual void OnLoad(HANDLE hHandle); virtual void OnSave(HANDLE hHandle); public: virtual void SetTabPosition(ENUM_TAB_POS eTabpos); //. TabÀÇ À§Ä¡¸¦ ¼³Á¤ÇÑ´Ù. ENUM_TAB_POS GetTabPosition(){return m_eTabPos;} virtual bool SetItemCount(int nCnt); //. ÃÖ¼Ò´Â 1ÀÌ´Ù. virtual int GetItemCount(){return m_nItemCnt;} virtual void SetItemButtonImageFormat(SI_TFORMAT* pFormat); //. Item ¹öưÀÇ À̹ÌÁö Á¤º¸¸¦ ¼ÂÆÃ ÇØÁØ´Ù. virtual SI_TFORMAT* GetItemButtonImageFormat(); //. Item ¹öưÀÇ ¹Ì¹ÌÁö Á¤º¸¸¦ ³Ñ°ÜÁØ´Ù. virtual int GetCurSel(){return m_nSelItem;} virtual void SetCurSel(int nSel); virtual void SetItemButtonIsOutline(bool blIs); //. Item ¹öưÀÇ ¿Ü°û¼± ÀÖ³Ä. ¾ø³Ä. virtual bool GetItemButtonIsOutline(); virtual void SetItemButtonOutlineColor(COLORREF rgb); //. ITem ¹öưÀÇ ¿Í°û¼± Ä®¶ó ¼ÂÆÃ. virtual COLORREF GetItemButtonOutlineColor(); virtual void SetItemWidth(long lnW); //. Tab button ÀÇ ³ÐÀ̸¦ ¼ÂÆÃÇØÁØ´Ù. virtual long GetItemWidth(){return m_lnItemWidth;} //. Tab button ÀÇ ³ÐÀ̸¦ °¡Á®¿Â´Ù. virtual short GetHeightRatio(){return m_nSelectRatio;} //. Tab Height or Base Height Ratio. virtual void SetHeightRatio(short nRatio); virtual int GetItemUseIDCount(int IIndex); //. Item buttonÀÇ À§Ä¡°ªÀ» ÁØ´Ù. virtual DWORD GetItemUseIDIndex(int IIndex, int DIndex); //. Item buttonÀÇ À§Ä¡°ª°ú °¡Á®¿Ã µ¥ÀÌŸÀÇ À§Ä¡°ªÀ» ÁØ´Ù. virtual void AddItembelongID(int IIndex, DWORD dwID); //. Item ¾È¿¡ »ç¿ëÇÒ ID Ãß°¡. virtual void RemoveItembelongID(int IIndex, DWORD dwID); //. Item ¾È¿¡ »ç¿ëÁßÀÎ ID Á¦°Å. virtual void RemoveItemUseIDAll(int IIndex); protected: void SelectItemButton(int nIndex); //. Mouse °ü·Ã ÇÔ¼öµé. virtual bool Message_MouseLButtonDown(SI_MESSAGE* pMsg); virtual bool Message_MouseLButtonUp(SI_MESSAGE* pMsg); virtual bool Message_MouseMove(SI_MESSAGE* pMsg); void DrawTabPosTop(); void DrawTabPosLeft(); void DrawTabPosBottom(); void DrawTabPosRight(); protected: STD_TAB_MAP m_stdTabMab; short m_nItemCnt; //.ÅÇÀÇ °¹¼ö. ±âº» 1·Î ¼ÂÆÃ. int m_nSelItem; //.¼±ÅÃµÈ Item Index. bool m_blItemOutline; COLORREF m_rgbItemColor; long m_lnItemWidth; short m_nSelectRatio; float m_fHeightRatio; ENUM_TAB_POS m_eTabPos; };