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>2009-01-10 15:45:10 +0000
committerStijn Buys <ingar@osirion.org>2009-01-10 15:45:10 +0000
commitd0d4bd189e2654b61be7740edd15d96b6cab968d (patch)
tree1ca7a6f5e28b7249b5eaa34a35fcd32ca291d012 /src/ui/toolbar.cc
parent34d0dd66aa8dfe57199c5f3ac316bbcd46cdccf7 (diff)
toolbar widget
Diffstat (limited to 'src/ui/toolbar.cc')
-rw-r--r--src/ui/toolbar.cc40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/ui/toolbar.cc b/src/ui/toolbar.cc
new file mode 100644
index 0000000..0d9dfe6
--- /dev/null
+++ b/src/ui/toolbar.cc
@@ -0,0 +1,40 @@
+/*
+ ui/toolbar.cc
+ This file is part of the Osirion project and is distributed under
+ the terms of the GNU General Public License version 2
+*/
+
+#include "ui/toolbar.h"
+#include "ui/button.h"
+
+namespace ui {
+
+Toolbar::Toolbar(Widget *parent) : Widget(parent)
+{
+ set_label("toolbar");
+ set_background(false);
+ set_border(false);
+}
+
+Toolbar::~Toolbar()
+{
+}
+
+void Toolbar::add_button(const char *bitmap, const char *text, const char *command)
+{
+ new Button(this, text, command);
+}
+
+void Toolbar::resize()
+{
+ const float n = (float) children().size();
+ float x = 0;
+ for (Widget::Children::iterator it = children().begin(); it != children().end(); it++) {
+ Widget *widget = (*it);
+ widget->set_geometry(x, 0, width() / n, height());
+ x += widget->width();
+ }
+}
+
+}
+