ButtonElement::ButtonElement(Ui* pUi, std::string pId, vec2 pPosition, std::string pSprite, std::string pSpriteActive, std::string pSpriteHover, std::string pText, std::string pFont, unsigned int pFontSize, vec3 pColor, UiElement* pParent) : TextElement(pUi,pId,pPosition,pText,pFont,pFontSize,pColor,false,pParent) { _sprite.Path = pSprite; _spriteActive.Path = pSpriteActive; _spriteHover.Path = pSpriteHover; _resources.push_back(UiResource(pSprite, UiResourceType::Texture,&_sprite)); _resources.push_back(UiResource(pSpriteActive, UiResourceType::Texture, &_spriteActive)); _resources.push_back(UiResource(pSpriteHover, UiResourceType::Texture, &_spriteHover)); }
ListBoxElement::ListBoxElement(std::string id, vec2 position, std::string sprite, std::string spriteActive, std::string spriteHover, std::vector<std::string> text, std::string font, unsigned int fontSize, vec3 color, unsigned int lineCount) : MultiTextElement(nullptr, id, position, text, font, fontSize, color) { this->sprite = sprite; this->spriteActive = spriteActive; this->spriteHover = spriteHover; _resources.push_back(UiResource(sprite, UiResourceType::Texture, nullptr)); _resources.push_back(UiResource(spriteActive, UiResourceType::Texture, nullptr)); _resources.push_back(UiResource(spriteHover, UiResourceType::Texture, nullptr)); this->_position = position; this->lineCount = lineCount; }
TextElement::TextElement(Ui* pUi, std::string pId, vec2 pPosition, std::string pText, std::string pFont, unsigned int pFontSize, bool pIsDynamic, vec3 pColor, UiElement* pParent) : UiElement(pUi,pId,pPosition, pParent,pIsDynamic) { _text.Text = pText; _text.Font = pFont; _text.FontSize = pFontSize; _text.Color = pColor; _resources.push_back(UiResource(pId, UiResourceType::Text, &_text,pIsDynamic)); }
MultiTextElement::MultiTextElement(Ui* pUi, std::string pId, vec2 pPosition, std::vector<std::string> pText, std::string pFont, unsigned int pFontSize, vec3 pColor, UiElement* pParent) : UiElement(pUi,pId,pPosition,pParent) { for (std::string &s : pText) { TextData data; data.Text = s; data.Font = pFont; data.FontSize = pFontSize; data.Color = pColor; _text.push_back(data); } for (unsigned int i = 0; i < _text.size(); i++) _resources.push_back(UiResource(pId + std::to_string(i), UiResourceType::Text, &_text.data()[i])); _drawIndex = 0; }