Adds some helpful methods to TextFont (#16370)

# Objective

- Add methods to facilitate `TextFont` component creation and insertion.

## Solution

- Added `from_font` and `from_font_size` which return a new `TextFont`
with said attributes provided as parameters.
- Added `with_font` and `with_font_size` which return an existing
`TextFont` modifying said attributes with the values provided as
parameters.

## Testing

- CI Checks.
- Tested methods locally by changing values and running the `text_debug`
example.
This commit is contained in:
Martín Maita 2024-11-19 02:30:39 +01:00 committed by GitHub
parent 81db6ec70a
commit 4dd805a003
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -289,6 +289,28 @@ pub struct TextFont {
}
impl TextFont {
/// Returns a new [`TextFont`] with the specified font face handle.
pub fn from_font(font: Handle<Font>) -> Self {
Self::default().with_font(font)
}
/// Returns a new [`TextFont`] with the specified font size.
pub fn from_font_size(font_size: f32) -> Self {
Self::default().with_font_size(font_size)
}
/// Returns this [`TextFont`] with the specified font face handle.
pub fn with_font(mut self, font: Handle<Font>) -> Self {
self.font = font;
self
}
/// Returns this [`TextFont`] with the specified font size.
pub const fn with_font_size(mut self, font_size: f32) -> Self {
self.font_size = font_size;
self
}
/// Returns this [`TextFont`] with the specified [`FontSmoothing`].
pub const fn with_font_smoothing(mut self, font_smoothing: FontSmoothing) -> Self {
self.font_smoothing = font_smoothing;