summaryrefslogtreecommitdiffstats
path: root/core/src/text
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/text')
-rw-r--r--core/src/text/paragraph.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/core/src/text/paragraph.rs b/core/src/text/paragraph.rs
index 26650793..04a97f35 100644
--- a/core/src/text/paragraph.rs
+++ b/core/src/text/paragraph.rs
@@ -1,7 +1,7 @@
//! Draw paragraphs.
use crate::alignment;
use crate::text::{Difference, Hit, Span, Text};
-use crate::{Point, Size};
+use crate::{Point, Rectangle, Size};
/// A text paragraph.
pub trait Paragraph: Sized + Default {
@@ -42,6 +42,10 @@ pub trait Paragraph: Sized + Default {
/// that was hit.
fn hit_span(&self, point: Point) -> Option<usize>;
+ /// Returns all bounds for the provided [`Span`] index of the [`Paragraph`].
+ /// A [`Span`] can have multiple bounds for each line it's on.
+ fn span_bounds(&self, index: usize) -> Vec<Rectangle>;
+
/// Returns the distance to the given grapheme index in the [`Paragraph`].
fn grapheme_position(&self, line: usize, index: usize) -> Option<Point>;