/* ========================================================================== * ÆÄ ÀÏ : CheckBox.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : À̼ø±Ô * ÀÛ ¼º ÀÏ : 2006.09.13 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "UINode.h" #include "UINodeData.h" /// üũ ¹Ú½º class cCheckBox : public cUINode { public: cCheckBox( eUINodeType type = eUINODE_CHECKBOX ); virtual ~cCheckBox(); virtual void SetPress( bool press ); protected: /// ÀûÇÕ ¿©ºÎ¸¦ ¸®ÅÏ virtual bool IsValid() const; /// À̺¥Æ®¸¦ ó¸® virtual void OnProcess( unsigned long deltaTime, unsigned long accumTime ) {} virtual void OnRender( cUIFontItemKeeper* pKeeper ); virtual void OnMouseMove( const cUIPos& pos ) {} virtual void OnLButtonDown( const cUIPos& pos, bool ctrl, bool /*AltPress*/, bool /*shiftPress*/ ); virtual void OnLButtonDoubleClick( const cUIPos& pos ); virtual bool SetSkin( const cUINodeSkin* pskin ); protected: /// üũµÈ À̹ÌÁö ÁÂÇ¥ cUIPos mCheckPos; /// üũ ¾ÈµÈ À̹ÌÁö ÁÂÇ¥ cUIPos mNoCheckPos; /// ÅØ½ºÃ³ ³Êºñ unsigned int mOriginalTexWidth, mOriginalTexHeight; /// »ç¿îµåÀ妽º unsigned long mCheckSoundIdx; unsigned long mNoCheckSoundIdx; }; ///////////////////////////////////////////////////////////////////// /// üũ ¹Ú½º ½ºÅ² class cCheckBoxSkin : public cUINodeSkin { public: cCheckBoxSkin( eUINodeType type = eUINODE_CHECKBOX ); virtual ~cCheckBoxSkin(); /// ·Îµù virtual bool Load( cParser& parser ); public: /// üũ ´­¸² ¿©ºÎ bool mPressed; /// üũµÈ À̹ÌÁö ÁÂÇ¥ cUIPos mCheckPos; /// üũ ¾ÈµÈ À̹ÌÁö ÁÂÇ¥ cUIPos mNoCheckPos; unsigned long mCheckSoundIdx; unsigned long mNoCheckSoundIdx; };