From 9683a7094d46e866066141de54780dddffb71a70 Mon Sep 17 00:00:00 2001 From: Jan Borsodi Date: Sat, 18 Sep 2010 01:53:54 +0200 Subject: [PATCH] Added faction, birth sign, reputation and bounty to stat screen. All values are currently hardcoded. --- apps/openmw/mwgui/layouts.cpp | 36 +++++++++++++++++++++++++++++++++++ apps/openmw/mwgui/layouts.hpp | 1 + 2 files changed, 37 insertions(+) diff --git a/apps/openmw/mwgui/layouts.cpp b/apps/openmw/mwgui/layouts.cpp index bc0c0c7c1..3d5c0c664 100644 --- a/apps/openmw/mwgui/layouts.cpp +++ b/apps/openmw/mwgui/layouts.cpp @@ -61,6 +61,19 @@ void StatsWindow::addValueItem(const std::string text, const std::string &value, coord2.top += lineHeight; } +void StatsWindow::addItem(const std::string text, MyGUI::IntCoord &coord1, MyGUI::IntCoord &coord2) +{ + MyGUI::StaticTextPtr skillNameWidget; + + skillNameWidget = skillAreaWidget->createWidget("SandText", coord1 + MyGUI::IntSize(coord2.width, 0), MyGUI::Align::Default); + skillNameWidget->setCaption(text); + + skillWidgets.push_back(skillNameWidget); + + coord1.top += lineHeight; + coord2.top += lineHeight; +} + void StatsWindow::addSkills(const std::set &skills, const std::string &titleId, const std::string &titleDefault, MyGUI::IntCoord &coord1, MyGUI::IntCoord &coord2) { // Get player and stats @@ -122,4 +135,27 @@ void StatsWindow::updateSkillArea() if (!miscSkills.empty()) addSkills(miscSkills, "sSkillClassMisc", "Misc Skills", coord1, coord2); + + WindowManager *wm = environment.mWindowManager; + + // Add a line separator if there are items above + if (!skillWidgets.empty()) + addSeparator(coord1, coord2); + + addGroup(wm->getGameSettingString("sFaction", "Faction"), coord1, coord2); + addItem("Temple", coord1, coord2); + + // Add a line separator if there are items above + if (!skillWidgets.empty()) + addSeparator(coord1, coord2); + + addGroup(wm->getGameSettingString("sSign", "Sign"), coord1, coord2); + addItem("The Mage", coord1, coord2); + + // Add a line separator if there are items above + if (!skillWidgets.empty()) + addSeparator(coord1, coord2); + + addValueItem(wm->getGameSettingString("sReputation", "Reputation"), boost::lexical_cast(static_cast(0)), CS_Normal, coord1, coord2); + addValueItem(wm->getGameSettingString("sBounty", "Bounty"), boost::lexical_cast(static_cast(0)), CS_Normal, coord1, coord2); } diff --git a/apps/openmw/mwgui/layouts.hpp b/apps/openmw/mwgui/layouts.hpp index b7e7f722f..0ea2dfe5a 100644 --- a/apps/openmw/mwgui/layouts.hpp +++ b/apps/openmw/mwgui/layouts.hpp @@ -307,6 +307,7 @@ namespace MWGui void addSeparator(MyGUI::IntCoord &coord1, MyGUI::IntCoord &coord2); void addGroup(const std::string &label, MyGUI::IntCoord &coord1, MyGUI::IntCoord &coord2); void addValueItem(const std::string text, const std::string &value, ColorStyle style, MyGUI::IntCoord &coord1, MyGUI::IntCoord &coord2); + void addItem(const std::string text, MyGUI::IntCoord &coord1, MyGUI::IntCoord &coord2); static const int lineHeight;