1 /* 2 GWEN 3 Copyright (c) 2010 Facepunch Studios 4 See license in Gwen.h 5 */ 6 7 #pragma once 8 #ifndef GWEN_CONTROLS_SCROLLBARBAR_H 9 #define GWEN_CONTROLS_SCROLLBARBAR_H 10 11 #include "Gwen/Controls/Dragger.h" 12 #include "Gwen/Gwen.h" 13 #include "Gwen/Skin.h" 14 15 namespace Gwen 16 { 17 namespace ControlsInternal 18 { 19 class GWEN_EXPORT ScrollBarBar : public ControlsInternal::Dragger 20 { 21 public: 22 GWEN_CONTROL(ScrollBarBar, ControlsInternal::Dragger); 23 24 virtual void Render(Skin::Base* skin); 25 virtual void Layout(Skin::Base* skin); 26 27 virtual void OnMouseMoved(int x, int y, int deltaX, int deltaY); 28 virtual void OnMouseClickLeft(int x, int y, bool bDown); 29 30 virtual void MoveTo(int x, int y); 31 SetHorizontal()32 virtual void SetHorizontal() { m_bHorizontal = true; } SetVertical()33 virtual void SetVertical() { m_bHorizontal = false; } IsVertical()34 virtual bool IsVertical() { return !m_bHorizontal; } IsHorizontal()35 virtual bool IsHorizontal() { return m_bHorizontal; } IsDepressed()36 virtual bool IsDepressed() { return m_bDepressed; } 37 38 protected: 39 bool m_bHorizontal; 40 }; 41 } // namespace ControlsInternal 42 } // namespace Gwen 43 #endif 44