summaryrefslogtreecommitdiff
path: root/gui.cpp
diff options
context:
space:
mode:
authorJon Bergli Heier <snakebite@jvnv.net>2011-06-02 00:22:05 +0200
committerJon Bergli Heier <snakebite@jvnv.net>2011-06-02 00:22:05 +0200
commit6304a3afdcf747468dc125991b3313887c2af941 (patch)
tree807358c0483ef3ea284872ef6f5e7eb77a2e74a2 /gui.cpp
parent1d106a249648b2c39c1256c80325b18ffe91f7f3 (diff)
Added a new transparent scheme based on Vanilla and a simple chat window, which displays text strings received from the server.
Diffstat (limited to 'gui.cpp')
-rw-r--r--gui.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/gui.cpp b/gui.cpp
index ed53cb4..4d4a723 100644
--- a/gui.cpp
+++ b/gui.cpp
@@ -29,6 +29,7 @@ void GUI::init() {
WindowManager::setDefaultResourceGroup("layouts");
SchemeManager::getSingleton().create( "VanillaSkin.scheme" );
+ SchemeManager::getSingleton().create( "Transparent.scheme" );
FontManager::getSingleton().create("VeraMono.font");
@@ -154,6 +155,33 @@ void ConsoleWindow::update() {
WindowManager::getSingleton().getWindow("console_editbox")->activate();
}
+/* ChatWindow */
+
+ChatWindow::ChatWindow() {
+ WindowManager& wmgr(WindowManager::getSingleton());
+
+ wnd = wmgr.loadWindowLayout("chat.layout");
+ root->addChildWindow(wnd);
+
+ listbox = static_cast<Listbox*>(wmgr.getWindow("chat_listbox"));
+}
+
+ChatWindow::~ChatWindow() {
+ WindowManager& wmgr(WindowManager::getSingleton());
+ wmgr.destroyWindow(wnd);
+ wmgr.cleanDeadPool();
+}
+
+void ChatWindow::add_line(const std::string& line) {
+ add_line(line.c_str());
+}
+
+void ChatWindow::add_line(const char *line) {
+ FormattedListboxTextItem *item = new FormattedListboxTextItem(String((utf8*)line), HTF_WORDWRAP_LEFT_ALIGNED);
+ listbox->addItem(item);
+ listbox->ensureItemIsVisible(item);
+}
+
/* RaiseWindow */
/* default values */