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