From 9233c3936657f6dc4ca9c73d84ea8c045b3fc09d Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 13 Jun 2013 00:43:25 +0300 Subject: move npc dialogs array from netcode. --- src/gui/npcdialog.cpp | 13 +++++++++++++ src/gui/npcdialog.h | 7 +++++++ 2 files changed, 20 insertions(+) (limited to 'src/gui') diff --git a/src/gui/npcdialog.cpp b/src/gui/npcdialog.cpp index f4d99cc79..2271a0bc7 100644 --- a/src/gui/npcdialog.cpp +++ b/src/gui/npcdialog.cpp @@ -66,6 +66,7 @@ #define CAPTION_SUBMIT _("Submit") NpcDialog::DialogList NpcDialog::instances; +NpcDialogs NpcDialog::mNpcDialogs; typedef std::vector::iterator ImageVectorIter; @@ -774,3 +775,15 @@ void NpcDialog::clearRows() { mTextBox->clearRows(); } + +void NpcDialog::clearDialogs() +{ + NpcDialogs::iterator it = mNpcDialogs.begin(); + const NpcDialogs::iterator it_end = mNpcDialogs.end(); + while (it != it_end) + { + delete (*it).second; + ++ it; + } + mNpcDialogs.clear(); +} diff --git a/src/gui/npcdialog.h b/src/gui/npcdialog.h index 3cdb39511..8a4e5b614 100644 --- a/src/gui/npcdialog.h +++ b/src/gui/npcdialog.h @@ -41,11 +41,14 @@ class BrowserBox; class ExtendedListBox; class ItemLinkHandler; class IntTextField; +class NpcDialog; class PlayerBox; class ScrollArea; class TextBox; class TextField; +typedef std::map NpcDialogs; + /** * The npc dialog. * @@ -202,6 +205,10 @@ class NpcDialog final : public Window, void clearRows(); + static NpcDialogs mNpcDialogs; + + static void clearDialogs(); + private: typedef std::list DialogList; static DialogList instances; -- cgit v1.2.3-70-g09d2