From 0d9ac84ca12fbf0dc1592c9f13d0f4b700743f01 Mon Sep 17 00:00:00 2001 From: David Athay Date: Wed, 16 Apr 2008 12:59:02 +0000 Subject: Fixed online status so that users are shown as online --- src/gui/guildwindow.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/gui/guildwindow.cpp') diff --git a/src/gui/guildwindow.cpp b/src/gui/guildwindow.cpp index 7237a870..0e9a066a 100644 --- a/src/gui/guildwindow.cpp +++ b/src/gui/guildwindow.cpp @@ -170,13 +170,15 @@ void GuildWindow::action(const gcn::ActionEvent &event) void GuildWindow::newGuildTab(const std::string &guildName) { - // Create new tab GuildListBox *list = new GuildListBox(); list->setListModel(player_node->getGuild(guildName)); ScrollArea *sa = new ScrollArea(list); sa->setDimension(gcn::Rectangle(5, 5, 135, 250)); + // Add the listbox to the map + mGuildLists.insert(std::pair(guildName, list)); + mGuildTabs->addTab(guildName, sa); mGuildTabs->setDimension(gcn::Rectangle(28,35,140,250)); @@ -257,9 +259,9 @@ void GuildWindow::removeTab(int guildId) void GuildWindow::setOnline(const std::string &guildName, const std::string &member, bool online) { - GuildListBox *box = dynamic_cast(mGuildTabs->getWidget(guildName)); - if (box) + GuildListMap::iterator itr = mGuildLists.find(guildName); + if (itr != mGuildLists.end()) { - box->setOnlineStatus(member, online); + itr->second->setOnlineStatus(member, online); } } -- cgit v1.2.3-60-g2f50