void TextNode::setText(int index, Text text) noexcept { TRJ_ASSERT(index >= 0 && index < (int) mTexts.size(), "Invalid text index"); mTexts[index] = std::move(text); invalidateBoundingBox(); }
void TextNode::removeText(int index) noexcept { TRJ_ASSERT(index >= 0 && index < (int) mTexts.size(), "Invalid text index"); mTexts.erase(mTexts.begin() + index); invalidateBoundingBox(); }
void TextNode::setFontLineHeight(float lineHeight) noexcept { TRJ_ASSERT(lineHeight >= 0, "Invalid line height"); mFontLineHeight = lineHeight; invalidateBoundingBox(); }
void TextNode::insertText(int index, Text text) { TRJ_ASSERT(index >= 0 && index <= (int) mTexts.size(), "Invalid text index"); mTexts.insert(mTexts.begin() + index, std::move(text)); invalidateBoundingBox(); }
void TextNode::setFontLetterSpacing(float letterSpacing) noexcept { TRJ_ASSERT(letterSpacing >= 0, "Invalid letter spacing"); mFontLetterSpacing = letterSpacing; invalidateBoundingBox(); }
void TextNode::setFontBlur(float fontBlur) noexcept { TRJ_ASSERT(fontBlur >= 0, "Invalid font blur"); mFontBlur = fontBlur; invalidateBoundingBox(); }
void TextNode::setFontSize(float fontSize) noexcept { TRJ_ASSERT(isPositive(fontSize), "Invalid font size"); mFontSize = fontSize; invalidateBoundingBox(); }
std::vector<TextNode::Text> TextNode::releaseTexts() noexcept { std::vector<Text> texts; texts.swap(mTexts); invalidateBoundingBox(); return texts; }
void ImageNode::setSize(const Size& size) noexcept { TRJ_ASSERT(! size.isEmpty(), "Size is empty"); mRect = Rect(size.getWidth() * -0.5f, size.getHeight() * -0.5f, size.getWidth(), size.getHeight()); setup(); invalidateBoundingBox(); }
TextNode::Text TextNode::releaseText(int index) noexcept { TRJ_ASSERT(index >= 0 && index < (int) mTexts.size(), "Invalid text index"); Text text(std::move(mTexts[index])); mTexts.erase(mTexts.begin() + index); invalidateBoundingBox(); return text; }
t_vec3s & PolygonalGeometry::vertices() { invalidateBoundingBox(); return m_vertices; }