Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2008-10-19 13:45:07 +0000
committerStijn Buys <ingar@osirion.org>2008-10-19 13:45:07 +0000
commit56cdfd3822d2800abdd2f912ab7f76a5764793a7 (patch)
tree2656c7ef694117e0554ae4a47bb09629c78ed8af /src/ui/scrollpane.h
parente6f1fad441a7737549f463ebac1c9de062b5173d (diff)
scrollpane widget, updated chatbox
Diffstat (limited to 'src/ui/scrollpane.h')
-rw-r--r--src/ui/scrollpane.h47
1 files changed, 47 insertions, 0 deletions
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__
+