From 936d480267578d7e80675e78ec1880aaaaab72d6 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez <hector@hecrj.dev> Date: Fri, 1 Dec 2023 16:04:27 +0100 Subject: Clip text to `viewport` bounds instead of layout bounds --- graphics/src/primitive.rs | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'graphics/src/primitive.rs') diff --git a/graphics/src/primitive.rs b/graphics/src/primitive.rs index 4ed512c1..837eb77a 100644 --- a/graphics/src/primitive.rs +++ b/graphics/src/primitive.rs @@ -14,24 +14,26 @@ use std::sync::Arc; pub enum Primitive<T> { /// A text primitive Text { - /// The contents of the text + /// The contents of the text. content: String, - /// The bounds of the text + /// The bounds of the text. bounds: Rectangle, - /// The color of the text + /// The color of the text. color: Color, - /// The size of the text in logical pixels + /// The size of the text in logical pixels. size: Pixels, - /// The line height of the text + /// The line height of the text. line_height: text::LineHeight, - /// The font of the text + /// The font of the text. font: Font, - /// The horizontal alignment of the text + /// The horizontal alignment of the text. horizontal_alignment: alignment::Horizontal, - /// The vertical alignment of the text + /// The vertical alignment of the text. vertical_alignment: alignment::Vertical, /// The shaping strategy of the text. shaping: text::Shaping, + /// The viewport of the text. + viewport: Rectangle, }, /// A paragraph primitive Paragraph { @@ -41,15 +43,19 @@ pub enum Primitive<T> { position: Point, /// The color of the paragraph. color: Color, + /// The viewport of the paragraph. + viewport: Rectangle, }, /// An editor primitive Editor { /// The [`editor::Weak`] reference. editor: editor::Weak, - /// The position of the paragraph. + /// The position of the editor. position: Point, - /// The color of the paragraph. + /// The color of the editor. color: Color, + /// The viewport of the editor. + viewport: Rectangle, }, /// A quad primitive Quad { -- cgit