summaryrefslogtreecommitdiff
path: root/src/gui/npc_text.cpp
diff options
context:
space:
mode:
authorPhilipp Sehmisch <crush@themanaworld.org>2009-01-23 14:33:20 +0100
committerPhilipp Sehmisch <crush@themanaworld.org>2009-01-23 14:33:20 +0100
commit35fb23f4c447004b8d6488bff697932f7abdba73 (patch)
tree25e8e16b17cb01b726e0f48795f55b69f9347785 /src/gui/npc_text.cpp
parentcae4571d182fcd64f6bef94552770768f651f30a (diff)
parent3d5cde132a10ccb1905688e29dca428aa772c777 (diff)
downloadmana-client-35fb23f4c447004b8d6488bff697932f7abdba73.tar.gz
mana-client-35fb23f4c447004b8d6488bff697932f7abdba73.tar.bz2
mana-client-35fb23f4c447004b8d6488bff697932f7abdba73.tar.xz
mana-client-35fb23f4c447004b8d6488bff697932f7abdba73.zip
Merge branch 'master' of git@gitorious.org:tmw/eathena
Diffstat (limited to 'src/gui/npc_text.cpp')
-rw-r--r--src/gui/npc_text.cpp34
1 files changed, 18 insertions, 16 deletions
diff --git a/src/gui/npc_text.cpp b/src/gui/npc_text.cpp
index c9ace303..6ad698bc 100644
--- a/src/gui/npc_text.cpp
+++ b/src/gui/npc_text.cpp
@@ -1,21 +1,21 @@
/*
* The Mana World
- * Copyright 2004 The Mana World Development Team
+ * Copyright (C) 2004 The Mana World Development Team
*
* This file is part of The Mana World.
*
- * The Mana World is free software; you can redistribute it and/or modify
+ * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* any later version.
*
- * The Mana World is distributed in the hope that it will be useful,
+ * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with The Mana World; if not, write to the Free Software
+ * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
@@ -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();