summaryrefslogtreecommitdiff
path: root/src/resources/db
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-07-20 18:52:42 +0300
committerAndrei Karas <akaras@inbox.ru>2017-07-20 18:52:42 +0300
commit70e304a900be02a734b6ebe7517b81bbe786a79f (patch)
tree196bb1f993c39ffcb4c8019a4064001fcc1690e8 /src/resources/db
parent8fef7cf913d6893ad0f6d52ba84f40066c1c4535 (diff)
downloadmanaplus-70e304a900be02a734b6ebe7517b81bbe786a79f.tar.gz
manaplus-70e304a900be02a734b6ebe7517b81bbe786a79f.tar.bz2
manaplus-70e304a900be02a734b6ebe7517b81bbe786a79f.tar.xz
manaplus-70e304a900be02a734b6ebe7517b81bbe786a79f.zip
In popupmenu get group for local player before each menu.
Diffstat (limited to 'src/resources/db')
-rw-r--r--src/resources/db/groupdb.cpp11
-rw-r--r--src/resources/db/groupdb.h1
2 files changed, 12 insertions, 0 deletions
diff --git a/src/resources/db/groupdb.cpp b/src/resources/db/groupdb.cpp
index fc61033cc..7b499018a 100644
--- a/src/resources/db/groupdb.cpp
+++ b/src/resources/db/groupdb.cpp
@@ -372,6 +372,17 @@ const std::string &GroupDb::getBadge(const int id)
return (*it).second->badge;
}
+const GroupInfo *GroupDb::getGroup(const int id)
+{
+ GroupInfos::const_iterator it = mGroups.find(id);
+ if (it == mGroups.end())
+ {
+ reportAlways("Unknown group id requested: %d", id);
+ return &mEmptyGroup;
+ }
+ return (*it).second;
+}
+
#ifdef UNITTESTS
GroupDb::GroupInfos &GroupDb::getGroups()
{
diff --git a/src/resources/db/groupdb.h b/src/resources/db/groupdb.h
index 0115880bc..020649001 100644
--- a/src/resources/db/groupdb.h
+++ b/src/resources/db/groupdb.h
@@ -42,6 +42,7 @@ namespace GroupDb
const std::string &getLongName(const int id) A_WARN_UNUSED;
bool getShowBadge(const int id) A_WARN_UNUSED;
const std::string &getBadge(const int id) A_WARN_UNUSED;
+ const GroupInfo *getGroup(const int id) A_WARN_UNUSED RETURNS_NONNULL;
typedef std::map<int, GroupInfo*> GroupInfos;
typedef GroupInfos::iterator GroupInfosIter;