Skip to content

Commit

Permalink
Adds some helpful methods to TextFont (#16370)
Browse files Browse the repository at this point in the history
# 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.
  • Loading branch information
mnmaita authored Nov 19, 2024
1 parent 81db6ec commit 4dd805a
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions crates/bevy_text/src/text.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down

0 comments on commit 4dd805a

Please sign in to comment.