From c5ca3e7f6571cb96f05a9ba2aa7ed3c0dbd06bf9 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 18 Oct 2013 23:47:50 +0300 Subject: move virtual member calls from socialwindow constuctor into postInit. also remove virtual method calls from tab classes. --- src/game.cpp | 1 + src/gui/windows/socialwindow.cpp | 17 ++++++++++++----- src/gui/windows/socialwindow.h | 2 ++ 3 files changed, 15 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/game.cpp b/src/game.cpp index a54bfd670..d9b4cd271 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -263,6 +263,7 @@ static void createGuiWindows() whoIsOnline = new WhoIsOnline; killStats = new KillStats; socialWindow = new SocialWindow; + socialWindow->postInit(); if (serverVersion >= 6) questsWindow = new QuestsWindow; diff --git a/src/gui/windows/socialwindow.cpp b/src/gui/windows/socialwindow.cpp index 74b01ef27..49cba826f 100644 --- a/src/gui/windows/socialwindow.cpp +++ b/src/gui/windows/socialwindow.cpp @@ -547,7 +547,7 @@ public: mScroll->setHorizontalScrollPolicy(gcn::ScrollArea::SHOW_AUTO); mScroll->setVerticalScrollPolicy(gcn::ScrollArea::SHOW_ALWAYS); - updateList(); + getPlayersAvatars(); setCaption(name); } @@ -881,7 +881,7 @@ public: const Map *const map = socialWindow->getMap(); if (!map) - return 01; + return -1; std::vector::const_iterator i = avatars->begin(); const std::vector::const_iterator i_end = avatars->end(); @@ -1021,7 +1021,7 @@ private: ++ ia;\ }\ avatars->clear();\ - Avatar *ava;\ + Avatar *ava = nullptr;\ std::list mobs;\ std::list::const_iterator i;\ std::list::const_iterator i_end; @@ -1135,7 +1135,7 @@ public: mScroll->setHorizontalScrollPolicy(gcn::ScrollArea::SHOW_AUTO); mScroll->setVerticalScrollPolicy(gcn::ScrollArea::SHOW_ALWAYS); - updateList(); + getPlayersAvatars(); setCaption(name); } @@ -1227,9 +1227,11 @@ public: mBrowserBox->addRow("##3---"); // TRANSLATORS: party popup item mBrowserBox->addRow(strprintf("@@cancel|%s@@", _("Cancel"))); + } + void postInit() + { add(mBrowserBox); - setContentSize(mBrowserBox->getWidth() + 8, mBrowserBox->getHeight() + 8); } @@ -1303,6 +1305,11 @@ SocialWindow::SocialWindow() : mLastUpdateTime(0), mNeedUpdate(false), mProcessedPortals(false) +{ + mCreatePopup->postInit(); +} + +void SocialWindow::postInit() { setWindowName("Social"); setVisible(false); diff --git a/src/gui/windows/socialwindow.h b/src/gui/windows/socialwindow.h index c1833cd0a..28b139589 100644 --- a/src/gui/windows/socialwindow.h +++ b/src/gui/windows/socialwindow.h @@ -54,6 +54,8 @@ public: ~SocialWindow(); + void postInit(); + bool addTab(Guild *const guild); bool removeTab(Guild *const guild); -- cgit v1.2.3-60-g2f50