#pragma once #include "etuicontrol.h" class CEtUIProgressBar : public CEtUIControl { enum PROGRESSBAR_TYPE { PBT_HORI, PBT_VERT, }; public: CEtUIProgressBar( CEtUIDialog *pParent ); virtual ~CEtUIProgressBar(void); protected: SUICoord m_ProgressCoord; DWORD m_dwTick; bool m_bSmooth; bool m_bUseLazy; bool m_bUseLayer; bool m_bUseProgressIndex; bool m_bImmediateChangeNeeded; bool m_bReverse; // bintitle - ProgressBar ¹ÝÀü : ExpGauge ¿Í´Â ´Þ¸® ProgressBar ¿¡ ±âº»Æ² ¸ð¾çÀÌ Àִ°æ¿ì(Element°¡ º¹¼ö) »ç¿ë. int m_nProgressIndex; // °ÔÀÌÁö¹Ù »öÀ» ¿©·¯°³ ÁöÁ¤Çصаæ¿ì ¼±ÅÃÇØ¼­ »ç¿ëÇÑ´Ù. int m_nProgressCount; int m_nLightShadeElementIndex; int m_nDarkShadeElementIndex; int m_nGaugeEndElementIndex; // 100% ¾Èä¿öÁ®ÀÖÀ»¶§ °ÔÀÌÁö ³¡¿¡´Ù°¡ ¹º°¡ ¸ð¾çÀ» Ç¥½ÃÇҰŶó¸é ¿©±â¿¡ À妽º¸¦ ³Ö´Â´Ù. float m_fProgress; float m_fProgressSmooth; std::vector m_nVecLayerElementList; public: virtual void Initialize( SUIControlProperty *pProperty ); virtual bool CanHaveFocus() { return false; } virtual void UpdateRects(); virtual void Render( float fElapsedTime ); public: bool IsUseLayer() { return m_bUseLayer; } int GetLayerCount() { return (int)m_nVecLayerElementList.size(); } int GetProgressIndex() { return m_nProgressIndex; } float GetProgress() { return m_fProgress; } void SetProgress( float fProgress ); void SetSmooth( bool bSmooth ) { m_bSmooth = bSmooth; } void SetImmediateChange() {m_bImmediateChangeNeeded = true;} void SetProgressIndex( int nIndex ) { m_nProgressIndex = nIndex; } void UseProgressIndex( bool bUse ) { m_bUseProgressIndex = bUse; } void UseLayer(bool bLayer, int nLayerElementCount, ... ); // ÇÁ·Î±×·¡½º À妽º¶§¹®¿¡ ¿¤¸®¸àÆ®À妽º°¡ À¯µ¿ÀûÀ̶ó ÀÎÀÚ·Î ¹Þ¾Æ¼­ ¼³Á¤ÇÑ´Ù. 0ÀÌ¸é »ç¿ë¾ÈÇÔ. void UseShadeProcessBar( int nLightElementIndex, int nDarkElementIndex ); // °ÔÀÌÁö ³¡¿¡ ¹¹ Ç¥½ÃÇÏ°í ½ÍÀ¸¸é, ¿¤¸®¸ÕÆ® ³Ö±â. 0ÀÌ¸é »ç¿ë¾ÈÇÔ. void UseGaugeEndElement( int nGaugeEndElementIndex ); void SetReverse( bool bR ){ m_bReverse = bR; } bool IsReverse(){ return m_bReverse; } };