/* * CHeroOverview.h, part of VCMI engine * * Authors: listed in file AUTHORS in main folder * * License: GNU General Public License v2.0 or later * Full text of license available in license.txt file, in main folder * */ #pragma once #include "../windows/CWindowObject.h" class CLabel; class CMultiLineLabel; class CFilledTexture; class CAnimImage; class CComponentBox; class CTextBox; class TransparentFilledRectangle; class SimpleLine; class CHeroOverview : public CWindowObject { const HeroTypeID & hero; int heroIdx; const int yOffset = 35; const int borderOffset = 5; const ColorRGBA rectangleColor = ColorRGBA(0, 0, 0, 75); const ColorRGBA borderColor = ColorRGBA(128, 100, 75); const ColorRGBA grayedColor = ColorRGBA(158, 130, 105); std::shared_ptr backgroundTexture; std::vector> backgroundRectangles; std::vector> backgroundLines; std::shared_ptr labelTitle; std::shared_ptr imageHero; std::shared_ptr labelHeroName; std::shared_ptr labelHeroBiography; std::shared_ptr labelHeroClass; std::shared_ptr labelHeroSpeciality; std::shared_ptr imageSpeciality; std::vector> labelSkillHeader; std::vector> imageSkill; std::vector> labelSkillFooter; std::shared_ptr labelSpecialityName; std::shared_ptr labelSpecialityDescription; std::shared_ptr labelArmyTitle; std::vector> imageArmy; std::vector> labelArmyCount; std::shared_ptr labelWarMachineTitle; std::vector> imageWarMachine; std::shared_ptr labelSpellTitle; std::vector> imageSpells; std::vector> labelSpellsNames; std::shared_ptr labelSecSkillTitle; std::vector> imageSecSkills; std::vector> labelSecSkillsNames; void genBackground(); void genControls(); public: CHeroOverview(const HeroTypeID & h); };