/* ========================================================================== * ÆÄ ÀÏ : ScrollBar.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ±è°¡¶÷ * ÀÛ ¼º ÀÏ : 2006-10-26 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "UIWindow.h" #include "UINodeData.h" class cButton; class cBarButton; class cPlaneObject; class cScrollBar : public cUIWindow { public: cScrollBar( eUINodeType type = eUINODE_SCROLLBAR ); virtual ~cScrollBar(); /// ½ºÅ©·Ñ¹ÙÀÇ À§Ä¡ ¼¼ÆÃ void SetPosX( unsigned int x ); void SetPosY( unsigned int y ); /// ½ºÅ©·Ñ¹ÙÀÇ ³ôÀ̰ª ¼¼ÆÃ void SetHeight( unsigned int h ); /// ¹Ù ¹öư¸¸ ¾Èº¸ÀÌ°Ô Çϱâ( ½ºÅ©·Ñ¹Ù°¡ ¹Ù ¹öưÀÌ º¸Àϸ¸Å­ ±æÁö ¾ÊÀ»‹š »ç¿ë ) void SetVisibleBarButton( bool visible ); /// ½ºÅ©·Ñ¹Ù ³ôÀÌ °ª ¾ò±â ( ¹Ù ¹öưÀÌ ½ºÅ©·Ñ °¡´ÉÇÑ ¿µ¿ª¸¸ °è»ê ) unsigned int GetScrollBarHeight(); unsigned int GetScrollButtonHeight(); /// ¹Ù ¹öư À§Ä¡ °ª ¾ò±â unsigned int GetBarButtonPosY(); /// ¹Ù ¹öưÀÌ À̵¿ÇÒ¼ö ÀÖ´Â ¿µ¿ª Å©±â ¾òÀ½ unsigned int GetScrollMarginHeight(); /// ¹Ù ¹öưÀÇ Á¦ÇÑ »çÀÌÁî ±¸Çϱâ( ´õÀÌ»ó ÀÛ¾ÆÁú¼ö ¾øÀ½ ) unsigned int GetMinimumHeight(); /// ½ºÅ©·Ñ¹Ù ¹Ù ¹öư ¾÷ void MoveScrollUp( int h ); /// ½ºÅ©·Ñ¹Ù ¹Ù ¹öư ´Ù¿î void MoveScrollDown( int h ); void Show( bool onsound = true ); protected: /// À̺¥Æ® ó¸® virtual bool HandleEvent( const cUIEvent& event ); virtual void OnRender( cUIFontItemKeeper* pKeeper ); virtual void OnLButtonDown( const cUIPos& pos, bool ctrl, bool alt, bool shift ); virtual void OnLButtonUp( const cUIPos& pos ); virtual bool SetSkin( const cUINodeSkin* pskin ); virtual void UpdateRect(); virtual void UpdateSkin(); virtual void OnShow(); virtual void OnHide(); /// »ý¼º bool OnCreate( cUINodeProperty* pproperty ); /// ¹Ù ¹öư À̵¿ À̺¥Æ® ¹ß»ý½Ã void UpdateBarButtonPos( const cUIPos& pos ); private: /// ¾÷ ¹öư ½ºÅ² À̸§ cString mUpButtonSkin; /// ´Ù¿î ¹öư ½ºÅ² À̸§ cString mDownButtonSkin; /// ¹Ù ¹öư ½ºÅ² À̸§ cString mBarButtonSkin; /// À§ ¹öư cButton* mpUpButton; /// ¾Æ·¡ ¹öư cButton* mpDownButton; /// ¹Ù ¹öư cBarButton* mpBarButton; /// ½ºÅ©·Ñ¹ÙÀÇ ¹è°æ À̹ÌÁö cPlaneObject* mpScrollImage; }; //////////////////////////////////////////////////////////////////////////// class cScrollBarSkin : public cUINodeSkin { public: cScrollBarSkin( eUINodeType type = eUINODE_SCROLLBAR ); virtual ~cScrollBarSkin(); /// ·Îµù virtual bool Load( cParser& parser ); public: /// ¾÷ ¹öư ½ºÅ² À̸§ cString mUpButtonSkin; /// ¹Ù ¹öư ½ºÅ² À̸§ cString mBarButtonSkin; /// ´Ù¿î ¹öư ½ºÅ² À̸§ cString mDownButtonSkin; };