CCenterSlider.hpp

Go to the documentation of this file.
00001 #ifndef __CCenterSlider__
00002 #define __CCenterSlider__
00003 
00004 #include "CControl.hpp"
00005 #include "CRolloverButton.hpp"
00006 #include <MathTools/CBounds.hpp>
00007 
00008 //  ===========================================================================
00009 
00010 using Exponent::GUI::Controls::CControl;
00011 using Exponent::GUI::Controls::CRolloverButton;
00012 using Exponent::MathTools::CBounds;
00013 
00014 //  ===========================================================================
00015 
00016 namespace Exponent
00017 {
00018     namespace GUI
00019     {
00020         namespace Controls
00021         {
00039             class CCenterSlider : public CControl
00040             {
00042                 EXPONENT_CLASS_DECLARATION;
00045 //  ===========================================================================
00046         
00047             public:
00048 
00049 //  ===========================================================================
00050 
00058                 CCenterSlider(IControlRoot *root, const long uniqueId, const CRect &area, IActionListener *listener = NULL);
00059 
00063                 virtual ~CCenterSlider();
00064 
00065 //  ===========================================================================
00066 
00071                 virtual void setValue(const double value);
00072 
00081                 virtual void setColours(CAlphaColour frameColour, CAlphaColour backgroundColour, CAlphaColour handleColour, CAlphaColour handleOverColour, CAlphaColour handleDownColour);
00082 
00083 //  ===========================================================================
00084 
00089                 virtual void handleLeftButtonDown(CMouseEvent &event);
00090 
00095                 virtual void handleLeftButtonUp(CMouseEvent &event);
00096 
00101                 virtual void handleMouseScroll(CMouseEvent &event);
00102 
00107                 virtual void handleMouseMovement(CMouseEvent &event);
00108 
00109 //  ===========================================================================
00110 
00115                 virtual void drawControl(CGraphics &graphics);
00116 
00117 //  ===========================================================================
00118 
00119             protected:
00120 
00121 //  ===========================================================================
00122 
00127                 void handleMovement(CMouseEvent &event);
00128 
00129 //  ===========================================================================
00130 
00131                 long  m_centerPoint;                        
00133                 CAlphaColour m_handleColour;                
00134                 CAlphaColour m_handleOverColour;            
00135                 CAlphaColour m_handleDownColour;            
00137                 CRolloverButton::ERolloverState m_state;    
00139                 CRect m_sliderArea;                         
00141                 bool m_isVertical;                          
00142                 bool m_isDragging;                          
00143             };
00144         }
00145     }
00146 }
00147 #endif  // End of CCenterSlider.hpp

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