diff options
author | 2023-05-02 03:30:06 +0200 | |
---|---|---|
committer | 2023-05-02 03:30:06 +0200 | |
commit | 2d7d9a130ece3fb6fa4cd52f9b32b4abd7887cf5 (patch) | |
tree | 6acba55171f28af1a3c9c4e65a99ad10abc11c65 /core/src/widget | |
parent | 57a276e16539d6aeca0619e0c5e36d0b1c1b5ef9 (diff) | |
parent | edf3432bf5176be13437b9fd5d25b890ec9dbe69 (diff) | |
download | iced-2d7d9a130ece3fb6fa4cd52f9b32b4abd7887cf5.tar.gz iced-2d7d9a130ece3fb6fa4cd52f9b32b4abd7887cf5.tar.bz2 iced-2d7d9a130ece3fb6fa4cd52f9b32b4abd7887cf5.zip |
Merge pull request #1822 from iced-rs/basic-shaping
`text::Shaping` strategy selection
Diffstat (limited to 'core/src/widget')
-rw-r--r-- | core/src/widget/text.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/core/src/widget/text.rs b/core/src/widget/text.rs index 3193ba84..f0392168 100644 --- a/core/src/widget/text.rs +++ b/core/src/widget/text.rs @@ -24,6 +24,7 @@ where horizontal_alignment: alignment::Horizontal, vertical_alignment: alignment::Vertical, font: Option<Renderer::Font>, + shaping: text::Shaping, style: <Renderer::Theme as StyleSheet>::Style, } @@ -42,6 +43,7 @@ where height: Length::Shrink, horizontal_alignment: alignment::Horizontal::Left, vertical_alignment: alignment::Vertical::Top, + shaping: text::Shaping::Basic, style: Default::default(), } } @@ -98,6 +100,12 @@ where self.vertical_alignment = alignment; self } + + /// Sets the [`text::Shaping`] strategy of the [`Text`]. + pub fn shaping(mut self, shaping: text::Shaping) -> Self { + self.shaping = shaping; + self + } } impl<'a, Message, Renderer> Widget<Message, Renderer> for Text<'a, Renderer> @@ -129,6 +137,7 @@ where size, self.font.unwrap_or_else(|| renderer.default_font()), bounds, + self.shaping, ); let size = limits.resolve(Size::new(width, height)); @@ -156,6 +165,7 @@ where theme.appearance(self.style.clone()), self.horizontal_alignment, self.vertical_alignment, + self.shaping, ); } } @@ -180,6 +190,7 @@ pub fn draw<Renderer>( appearance: Appearance, horizontal_alignment: alignment::Horizontal, vertical_alignment: alignment::Vertical, + shaping: text::Shaping, ) where Renderer: text::Renderer, { @@ -205,6 +216,7 @@ pub fn draw<Renderer>( font: font.unwrap_or_else(|| renderer.default_font()), horizontal_alignment, vertical_alignment, + shaping, }); } @@ -234,6 +246,7 @@ where vertical_alignment: self.vertical_alignment, font: self.font, style: self.style.clone(), + shaping: self.shaping, } } } |