1 // Copyright (C) 2002-2012 Nikolaus Gebhardt
\r
2 // This file is part of the "Irrlicht Engine".
\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
\r
5 #ifndef __I_GUI_SCROLL_BAR_H_INCLUDED__
\r
6 #define __I_GUI_SCROLL_BAR_H_INCLUDED__
\r
8 #include "IGUIElement.h"
\r
15 //! Default scroll bar GUI element.
\r
16 /** \par This element can create the following events of type EGUI_EVENT_TYPE:
\r
17 \li EGET_SCROLL_BAR_CHANGED
\r
19 class IGUIScrollBar : public IGUIElement
\r
24 IGUIScrollBar(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle)
\r
25 : IGUIElement(EGUIET_SCROLL_BAR, environment, parent, id, rectangle) {}
\r
27 //! sets the maximum value of the scrollbar.
\r
28 virtual void setMax(s32 max) = 0;
\r
29 //! gets the maximum value of the scrollbar.
\r
30 virtual s32 getMax() const = 0;
\r
32 //! sets the minimum value of the scrollbar.
\r
33 virtual void setMin(s32 min) = 0;
\r
34 //! gets the minimum value of the scrollbar.
\r
35 virtual s32 getMin() const = 0;
\r
37 //! gets the small step value
\r
38 virtual s32 getSmallStep() const = 0;
\r
40 //! Sets the small step
\r
41 /** That is the amount that the value changes by when clicking
\r
42 on the buttons or using the cursor keys. */
\r
43 virtual void setSmallStep(s32 step) = 0;
\r
45 //! gets the large step value
\r
46 virtual s32 getLargeStep() const = 0;
\r
48 //! Sets the large step
\r
49 /** That is the amount that the value changes by when clicking
\r
50 in the tray, or using the page up and page down keys. */
\r
51 virtual void setLargeStep(s32 step) = 0;
\r
53 //! gets the current position of the scrollbar
\r
54 virtual s32 getPos() const = 0;
\r
56 //! sets the current position of the scrollbar
\r
57 virtual void setPos(s32 pos) = 0;
\r
61 } // end namespace gui
\r
62 } // end namespace irr
\r