pub struct TextLayout(/* private fields */);Expand description
The Layout for TextElement. This can be used to map indices to pixels and vice versa.
Implementations§
Source§impl TextLayout
impl TextLayout
Sourcepub fn paint_background(&self, window: &mut Window, cx: &mut App) -> Result<()>
pub fn paint_background(&self, window: &mut Window, cx: &mut App) -> Result<()>
Paints the backgrounds of the text runs without the glyphs, so that callers can paint
content, such as highlights, between the backgrounds and the text. Follow it with
Self::paint_foreground to paint the glyphs.
Sourcepub fn paint_foreground(&self, window: &mut Window, cx: &mut App) -> Result<()>
pub fn paint_foreground(&self, window: &mut Window, cx: &mut App) -> Result<()>
Paints the glyphs and decorations of the text without the run backgrounds.
Sourcepub fn index_for_position(
&self,
position: Point<Pixels>,
) -> Result<usize, usize>
pub fn index_for_position( &self, position: Point<Pixels>, ) -> Result<usize, usize>
Get the byte index into the input of the pixel position.
Sourcepub fn position_for_index(&self, index: usize) -> Option<Point<Pixels>>
pub fn position_for_index(&self, index: usize) -> Option<Point<Pixels>>
Get the pixel position for the given byte index.
Sourcepub fn line_layout_for_index(
&self,
index: usize,
) -> Option<Arc<WrappedLineLayout>>
pub fn line_layout_for_index( &self, index: usize, ) -> Option<Arc<WrappedLineLayout>>
Retrieve the layout for the line containing the given byte index.
Sourcepub fn line_layouts(&self) -> SmallVec<[Arc<WrappedLineLayout>; 1]>
pub fn line_layouts(&self) -> SmallVec<[Arc<WrappedLineLayout>; 1]>
Retrieve all line layouts in source order.
Sourcepub fn line_height(&self) -> Pixels
pub fn line_height(&self) -> Pixels
The line height for this layout.
Sourcepub fn wrapped_text(&self) -> String
pub fn wrapped_text(&self) -> String
The text for this layout (with soft-wraps as newlines)
Trait Implementations§
Source§impl Clone for TextLayout
impl Clone for TextLayout
Auto Trait Implementations§
impl !RefUnwindSafe for TextLayout
impl !Send for TextLayout
impl !Sync for TextLayout
impl !UnwindSafe for TextLayout
impl Freeze for TextLayout
impl Unpin for TextLayout
impl UnsafeUnpin for TextLayout
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().