Merge pull request #1814 from ids1024/advanced-text

Do not require `Copy` for text `StyleSheet::Style`
This commit is contained in:
Héctor Ramón 2023-04-28 19:41:40 +02:00 committed by GitHub
commit 57a276e165
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 23 deletions

View file

@ -153,7 +153,7 @@ where
&self.content,
self.size,
self.font,
theme.appearance(self.style),
theme.appearance(self.style.clone()),
self.horizontal_alignment,
self.vertical_alignment,
);
@ -233,7 +233,7 @@ where
horizontal_alignment: self.horizontal_alignment,
vertical_alignment: self.vertical_alignment,
font: self.font,
style: self.style,
style: self.style.clone(),
}
}
}
@ -261,7 +261,7 @@ where
/// The style sheet of some text.
pub trait StyleSheet {
/// The supported style of the [`StyleSheet`].
type Style: Default + Copy;
type Style: Default + Clone;
/// Produces the [`Appearance`] of some text.
fn appearance(&self, style: Self::Style) -> Appearance;

View file

@ -1,20 +0,0 @@
//! Change the appearance of text.
use crate::core::Color;
/// The style sheet of some text.
pub trait StyleSheet {
/// The supported style of the [`StyleSheet`].
type Style: Default + Copy;
/// Produces the [`Appearance`] of some text.
fn appearance(&self, style: Self::Style) -> Appearance;
}
/// The apperance of some text.
#[derive(Debug, Clone, Copy, Default)]
pub struct Appearance {
/// The [`Color`] of the text.
///
/// The default, `None`, means using the inherited color.
pub color: Option<Color>,
}