summaryrefslogtreecommitdiff
path: root/src/gui/npc_text.cpp
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2009-01-20 10:09:59 +0000
committerJared Adams <jaxad0127@gmail.com>2009-01-20 10:09:59 +0000
commit4c2cabced8943dea1f5b1209381aeaa174b62657 (patch)
treed241c85dd08b1e7f4da18bba1e078cd2b49bf4dd /src/gui/npc_text.cpp
parent3fcd3755f5c5d23af31e081c59275ef94cb4e036 (diff)
downloadmana-client-4c2cabced8943dea1f5b1209381aeaa174b62657.tar.gz
mana-client-4c2cabced8943dea1f5b1209381aeaa174b62657.tar.bz2
mana-client-4c2cabced8943dea1f5b1209381aeaa174b62657.tar.xz
mana-client-4c2cabced8943dea1f5b1209381aeaa174b62657.zip
Switch the NPC text dialog over to a BrowserBox
Diffstat (limited to 'src/gui/npc_text.cpp')
-rw-r--r--src/gui/npc_text.cpp26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/gui/npc_text.cpp b/src/gui/npc_text.cpp
index c9ace303..259678ab 100644
--- a/src/gui/npc_text.cpp
+++ b/src/gui/npc_text.cpp
@@ -23,9 +23,9 @@
#include <string>
-#include "scrollarea.h"
+#include "browserbox.h"
#include "button.h"
-#include "textbox.h"
+#include "scrollarea.h"
#include "../npc.h"
@@ -39,10 +39,10 @@ NpcTextDialog::NpcTextDialog():
setMinWidth(200);
setMinHeight(150);
- mTextBox = new TextBox;
- mTextBox->setEditable(false);
+ mBrowserBox = new BrowserBox(BrowserBox::AUTO_WRAP);
+ mBrowserBox->setOpaque(true);
- scrollArea = new ScrollArea(mTextBox);
+ scrollArea = new ScrollArea(mBrowserBox);
okButton = new Button(_("OK"), "ok", this);
setContentSize(260, 175);
@@ -60,15 +60,20 @@ NpcTextDialog::NpcTextDialog():
setLocationRelativeTo(getParent());
}
+void NpcTextDialog::clearText()
+{
+ mBrowserBox->clearRows();
+}
+
void NpcTextDialog::setText(const std::string &text)
{
- mText = text;
- mTextBox->setTextWrapped(mText);
+ mBrowserBox->clearRows();
+ mBrowserBox->addRow(text);
}
void NpcTextDialog::addText(const std::string &text)
{
- setText(mText + text + "\n");
+ mBrowserBox->addRow(text);
}
void NpcTextDialog::widgetResized(const gcn::Event &event)
@@ -84,16 +89,13 @@ void NpcTextDialog::widgetResized(const gcn::Event &event)
okButton->setPosition(
width - 5 - okButton->getWidth(),
height - 5 - okButton->getHeight());
-
- // Set the text again so that it gets wrapped according to the new size
- mTextBox->setTextWrapped(mText);
}
void NpcTextDialog::action(const gcn::ActionEvent &event)
{
if (event.getId() == "ok")
{
- setText("");
+ clearText();
setVisible(false);
if (current_npc)
current_npc->nextDialog();