CScrollBar.hpp

Go to the documentation of this file.
00001 #ifndef __CScrollBar__
00002 #define __CScrollBar__
00003 
00004 #include "CSlider.hpp"
00005 #include "CScrollBarImages.hpp"
00006 #include "../Listeners/IScrollListener.hpp"
00007 
00008 //  ===========================================================================
00009 
00010 using Exponent::GUI::Controls::CSlider;
00011 using Exponent::GUI::Controls::CScrollBarImages;
00012 using Exponent::GUI::Listeners::IScrollListener;
00013 
00014 //  ===========================================================================
00015 
00016 namespace Exponent
00017 {
00018     namespace GUI
00019     {
00020         namespace Controls
00021         {
00040             class CScrollBar : public CSlider, public IActionListener
00041             {
00043                 EXPONENT_CLASS_DECLARATION;
00046 //  ===========================================================================
00047 
00048             public:
00049 
00050 //  ===========================================================================
00051 
00060                 CScrollBar(IControlRoot *root, const long uniqueId, const CRect &area, const CRect &virtualArea, IScrollListener *scrollListener = NULL);
00061 
00065                 virtual ~CScrollBar();
00066 
00067 //  ===========================================================================
00068 
00072                 virtual void drawControl(CGraphics &graphics);
00073 
00074 //  ===========================================================================
00075 
00080                 void setVirtualArea(const CRect &virtualArea);
00081 
00086                 virtual void registerScrollListener(IScrollListener *listener);
00087                 
00092                 virtual void handleActionEvent(const CActionEvent &event);
00093 
00094 //  ===========================================================================
00095 
00102                 void setScrollBarImages(CScrollBarImages *normal, CScrollBarImages *mouseOver, CScrollBarImages *mouseDown);
00103 
00104 //  ===========================================================================
00105 
00106             protected:
00107 
00108 //  ===========================================================================
00109 
00110                 IScrollListener *m_scrollListener;          
00112                 CRect m_virtualArea;                        
00113                 double m_areaRatio;                         
00115                 CScrollBarImages *m_normalImages;           
00116                 CScrollBarImages *m_mouseOverImage;         
00117                 CScrollBarImages *m_mouseDownImages;        
00118             };
00119         }
00120     }
00121 }
00122 #endif  // End of CScrollBar.hpp

Infinity API - CScrollBar.hpp Source File generated on 7 Mar 2007