From 56cdfd3822d2800abdd2f912ab7f76a5764793a7 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sun, 19 Oct 2008 13:45:07 +0000 Subject: scrollpane widget, updated chatbox --- src/ui/scrollpane.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/ui/scrollpane.h (limited to 'src/ui/scrollpane.h') diff --git a/src/ui/scrollpane.h b/src/ui/scrollpane.h new file mode 100644 index 0000000..47e68ee --- /dev/null +++ b/src/ui/scrollpane.h @@ -0,0 +1,47 @@ +/* + ui/scrollpane.h + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_UI_SCROLLPANE_H__ +#define __INCLUDED_UI_SCROLLPANE_H__ + +#include "ui/widget.h" +#include "ui/definitions.h" + +namespace ui +{ + +/// a widget displaying centered text +class ScrollPane : public Widget +{ +public: + ScrollPane(Widget *parent, ui::Text &text); + ~ScrollPane(); + + /// set scroll + void set_scroll(int scroll); + + /// increase scroll + void inc_scroll(int scroll); + + /// decrease scroll + void dec_scroll(int scroll); + + /// current scroll position + inline int scroll() const { return scrollpane_scroll; } + +protected: + /// draw the scroll pane + virtual void draw(); + +private: + ui::Text &scrollpane_text; + int scrollpane_scroll; +}; + +} + +#endif // __INCLUDED_UI_SCROLLPANE_H__ + -- cgit v1.2.3