diff options
Diffstat (limited to 'wgpu/src/layer/text.rs')
| -rw-r--r-- | wgpu/src/layer/text.rs | 32 | 
1 files changed, 27 insertions, 5 deletions
| diff --git a/wgpu/src/layer/text.rs b/wgpu/src/layer/text.rs index ba1bdca8..66417cec 100644 --- a/wgpu/src/layer/text.rs +++ b/wgpu/src/layer/text.rs @@ -1,10 +1,32 @@  use crate::core::alignment;  use crate::core::text; -use crate::core::{Color, Font, Rectangle}; +use crate::core::{Color, Font, Pixels, Point, Rectangle}; +use crate::graphics::text::editor; +use crate::graphics::text::paragraph; + +/// A text primitive. +#[derive(Debug, Clone)] +pub enum Text<'a> { +    /// A paragraph. +    #[allow(missing_docs)] +    Paragraph { +        paragraph: paragraph::Weak, +        position: Point, +        color: Color, +    }, +    /// An editor. +    #[allow(missing_docs)] +    Editor { +        editor: editor::Weak, +        position: Point, +        color: Color, +    }, +    /// A cached text. +    Cached(Cached<'a>), +} -/// A paragraph of text. -#[derive(Debug, Clone, Copy)] -pub struct Text<'a> { +#[derive(Debug, Clone)] +pub struct Cached<'a> {      /// The content of the [`Text`].      pub content: &'a str, @@ -15,7 +37,7 @@ pub struct Text<'a> {      pub color: Color,      /// The size of the [`Text`] in logical pixels. -    pub size: f32, +    pub size: Pixels,      /// The line height of the [`Text`].      pub line_height: text::LineHeight, | 
