Mercurial > LightClone
view LightClone/Source/GuiButton.h @ 33:06b151afc8d0
Cleaned up UI art; Completed drag and drop; Centered grid
author | koryspansel <koryspansel@bendbroadband.com> |
---|---|
date | Wed, 21 Sep 2011 00:50:20 -0700 |
parents | 3a63df04f3c0 |
children | 7ff46a00bcd3 |
line wrap: on
line source
/* * GuiButton */ #ifndef __GUIBUTTON_H__ #define __GUIBUTTON_H__ #include "Core.h" #include "GuiElement.h" /* * GuiButtonState */ enum { GuiButtonState_Normal, GuiButtonState_Down, GuiButtonState_Hover, GuiButtonState_Disabled, GuiButtonState_Count, }; /* * GuiButton */ class GuiButton : public GuiElement { public: /* * EventClick */ static const char* EventClick; private: /* * pResourceManager */ ResourceManager* pResourceManager; /* * nState */ uint32 nState; /* * pEffect */ ID3DXEffect* pEffect; /* * pVertexBuffer */ IDirect3DVertexBuffer9* pVertexBuffer; /* * pTexture */ IDirect3DTexture9* pTexture[GuiButtonState_Count]; /* * pFont */ ID3DXFont* pFont; /* * kText */ FixedString<> kText; public: /* * GuiButton */ GuiButton(); /* * Initialize */ virtual ErrorCode Initialize(ResourceManager* pManager); /* * Terminate */ virtual void Terminate(); /* * Update */ virtual void Update(float fElapsed); /* * Render */ virtual void Render(RenderContext& kContext, Camera& kCamera); /* * SetTexture */ ErrorCode SetTexture(uint32 nState, const char* pName, bool bResize = false); /* * SetFont */ ErrorCode SetFont(const char* pName, uint32 nSize, uint32 nWeight = FW_NORMAL); /* * SetText */ void SetText(const char* pText); /* * OnMouseEnter */ virtual void OnMouseEnter(); /* * OnMouseLeave */ virtual void OnMouseLeave(); /* * OnMouseDown */ virtual void OnMouseDown(uint32 nButton, float fX, float fY); /* * OnMouseUp */ virtual void OnMouseUp(uint32 nButton, float fX, float fY); /* * OnMouseMove */ virtual void OnMouseMove(float fX, float fY); private: /* * SetupVertexBuffer */ ErrorCode SetupVertexBuffer(); }; #endif //__GUIBUTTON_H__