mirror of
https://github.com/vcmi/vcmi.git
synced 2025-08-08 22:26:51 +02:00
Merge pull request #5194 from Laserlicht/patch-3
[1.6.x] add scrollbar for hero overview descriptions if necessary
This commit is contained in:
@@ -19,9 +19,11 @@
|
||||
#include "../render/IImage.h"
|
||||
#include "../renderSDL/RenderHandler.h"
|
||||
#include "../widgets/CComponentHolder.h"
|
||||
#include "../widgets/Slider.h"
|
||||
#include "../widgets/Images.h"
|
||||
#include "../widgets/TextControls.h"
|
||||
#include "../widgets/GraphicalPrimitiveCanvas.h"
|
||||
#include "../eventsSDL/InputHandler.h"
|
||||
|
||||
#include "../../lib/IGameSettings.h"
|
||||
#include "../../lib/entities/hero/CHeroHandler.h"
|
||||
@@ -99,7 +101,9 @@ void CHeroOverview::genControls()
|
||||
// hero biography
|
||||
r = Rect(borderOffset, 5 * borderOffset + yOffset + 148, 284, 130);
|
||||
backgroundRectangles.push_back(std::make_shared<TransparentFilledRectangle>(r.resize(1), rectangleColor, borderColor));
|
||||
labelHeroBiography = std::make_shared<CMultiLineLabel>(r.resize(-borderOffset), FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE, (*CGI->heroh)[heroIdx]->getBiographyTranslated());
|
||||
labelHeroBiography = std::make_shared<CTextBox>((*CGI->heroh)[heroIdx]->getBiographyTranslated(), r.resize(-borderOffset), CSlider::EStyle::BROWN, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE);
|
||||
if(labelHeroBiography->slider && GH.input().getCurrentInputMode() != InputMode::TOUCH)
|
||||
labelHeroBiography->slider->clearScrollBounds();
|
||||
|
||||
// speciality name
|
||||
r = Rect(2 * borderOffset + 44, 6 * borderOffset + yOffset + 278, 235, 44);
|
||||
@@ -115,7 +119,9 @@ void CHeroOverview::genControls()
|
||||
// speciality description
|
||||
r = Rect(borderOffset, 7 * borderOffset + yOffset + 322, 284, 85);
|
||||
backgroundRectangles.push_back(std::make_shared<TransparentFilledRectangle>(r.resize(1), rectangleColor, borderColor));
|
||||
labelSpecialityDescription = std::make_shared<CMultiLineLabel>(r.resize(-borderOffset), FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE, (*CGI->heroh)[heroIdx]->getSpecialtyDescriptionTranslated());
|
||||
labelSpecialityDescription = std::make_shared<CTextBox>((*CGI->heroh)[heroIdx]->getSpecialtyDescriptionTranslated(), r.resize(-borderOffset), CSlider::EStyle::BROWN, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE);
|
||||
if(labelSpecialityDescription->slider && GH.input().getCurrentInputMode() != InputMode::TOUCH)
|
||||
labelSpecialityDescription->slider->clearScrollBounds();
|
||||
|
||||
// army title
|
||||
r = Rect(302, borderOffset + yOffset, 292, 30);
|
||||
|
@@ -39,7 +39,7 @@ class CHeroOverview : public CWindowObject
|
||||
std::shared_ptr<CLabel> labelTitle;
|
||||
std::shared_ptr<CAnimImage> imageHero;
|
||||
std::shared_ptr<CLabel> labelHeroName;
|
||||
std::shared_ptr<CMultiLineLabel> labelHeroBiography;
|
||||
std::shared_ptr<CTextBox> labelHeroBiography;
|
||||
std::shared_ptr<CLabel> labelHeroClass;
|
||||
std::shared_ptr<CLabel> labelHeroSpeciality;
|
||||
std::shared_ptr<CAnimImage> imageSpeciality;
|
||||
@@ -47,7 +47,7 @@ class CHeroOverview : public CWindowObject
|
||||
std::vector<std::shared_ptr<CAnimImage>> imageSkill;
|
||||
std::vector<std::shared_ptr<CLabel>> labelSkillFooter;
|
||||
std::shared_ptr<CLabel> labelSpecialityName;
|
||||
std::shared_ptr<CMultiLineLabel> labelSpecialityDescription;
|
||||
std::shared_ptr<CTextBox> labelSpecialityDescription;
|
||||
|
||||
std::shared_ptr<CLabel> labelArmyTitle;
|
||||
std::vector<std::shared_ptr<CAnimImage>> imageArmy;
|
||||
|
Reference in New Issue
Block a user