diff options
Diffstat (limited to 'src/ui/label.cc')
-rw-r--r-- | src/ui/label.cc | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/ui/label.cc b/src/ui/label.cc new file mode 100644 index 0000000..f924452 --- /dev/null +++ b/src/ui/label.cc @@ -0,0 +1,46 @@ +/* + ui/label.cc + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2 +*/ + +#include "math/vector2f.h" +#include "render/primitives.h" +#include "ui/label.h" + +using math::Vector2f; + +namespace ui { + +Label::Label(Widget *parent, char const *text) : Widget(parent) +{ + set_label("label"); + if (text) + label_text.assign(text); +} + +Label::~Label() +{ +} + +void Label::draw() +{ + Widget::draw(); + + draw_text(); +} + +void Label::draw_text() +{ + if (!label_text.size()) + return; + + if (palette()) + render::gl::color(palette()->foreground()); + + render::primitives::text_centered(to_global(location()), size(), label_text); +} + +} + + |