pub struct BufferLine { /* private fields */ }
Expand description
A line (or paragraph) of text that is shaped and laid out
Implementations§
Source§impl BufferLine
impl BufferLine
Sourcepub fn new<T: Into<String>>(
text: T,
ending: LineEnding,
attrs_list: AttrsList,
shaping: Shaping,
) -> Self
pub fn new<T: Into<String>>( text: T, ending: LineEnding, attrs_list: AttrsList, shaping: Shaping, ) -> Self
Create a new line with the given text and attributes list
Cached shaping and layout can be done using the Self::shape
and
Self::layout
functions
Sourcepub fn reset_new<T: Into<String>>(
&mut self,
text: T,
ending: LineEnding,
attrs_list: AttrsList,
shaping: Shaping,
)
pub fn reset_new<T: Into<String>>( &mut self, text: T, ending: LineEnding, attrs_list: AttrsList, shaping: Shaping, )
Resets the current line with new internal values.
Avoids deallocating internal caches so they can be reused.
Sourcepub fn set_text<T: AsRef<str>>(
&mut self,
text: T,
ending: LineEnding,
attrs_list: AttrsList,
) -> bool
pub fn set_text<T: AsRef<str>>( &mut self, text: T, ending: LineEnding, attrs_list: AttrsList, ) -> bool
Set text and attributes list
Will reset shape and layout if it differs from current text and attributes list. Returns true if the line was reset
Sourcepub fn into_text(self) -> String
pub fn into_text(self) -> String
Consume this line, returning only its text contents as a String.
Sourcepub fn ending(&self) -> LineEnding
pub fn ending(&self) -> LineEnding
Get line ending
Sourcepub fn set_ending(&mut self, ending: LineEnding) -> bool
pub fn set_ending(&mut self, ending: LineEnding) -> bool
Set line ending
Will reset shape and layout if it differs from current line ending. Returns true if the line was reset
Sourcepub fn attrs_list(&self) -> &AttrsList
pub fn attrs_list(&self) -> &AttrsList
Get attributes list
Sourcepub fn set_attrs_list(&mut self, attrs_list: AttrsList) -> bool
pub fn set_attrs_list(&mut self, attrs_list: AttrsList) -> bool
Set attributes list
Will reset shape and layout if it differs from current attributes list. Returns true if the line was reset
Sourcepub fn set_align(&mut self, align: Option<Align>) -> bool
pub fn set_align(&mut self, align: Option<Align>) -> bool
Set the text alignment
Will reset layout if it differs from current alignment.
Setting to None will use Align::Right
for RTL lines, and Align::Left
for LTR lines.
Returns true if the line was reset
Sourcepub fn append(&mut self, other: Self)
pub fn append(&mut self, other: Self)
Append line at end of this line
The wrap setting of the appended line will be lost
Sourcepub fn reset_shaping(&mut self)
pub fn reset_shaping(&mut self)
Reset shaping and layout caches
Sourcepub fn reset_layout(&mut self)
pub fn reset_layout(&mut self)
Reset only layout cache
Sourcepub fn shape(
&mut self,
font_system: &mut FontSystem,
tab_width: u16,
) -> &ShapeLine
pub fn shape( &mut self, font_system: &mut FontSystem, tab_width: u16, ) -> &ShapeLine
Shape line, will cache results
Sourcepub fn layout(
&mut self,
font_system: &mut FontSystem,
font_size: f32,
width_opt: Option<f32>,
wrap: Wrap,
match_mono_width: Option<f32>,
tab_width: u16,
) -> &[LayoutLine]
pub fn layout( &mut self, font_system: &mut FontSystem, font_size: f32, width_opt: Option<f32>, wrap: Wrap, match_mono_width: Option<f32>, tab_width: u16, ) -> &[LayoutLine]
Layout line, will cache results
Sourcepub fn layout_opt(&self) -> Option<&Vec<LayoutLine>>
pub fn layout_opt(&self) -> Option<&Vec<LayoutLine>>
Get line layout cache
Sourcepub fn metadata(&self) -> Option<usize>
pub fn metadata(&self) -> Option<usize>
Get line metadata. This will be None if BufferLine::set_metadata
has not been called
after the last reset of shaping and layout caches
Sourcepub fn set_metadata(&mut self, metadata: usize)
pub fn set_metadata(&mut self, metadata: usize)
Set line metadata. This is stored until the next line reset
Trait Implementations§
Source§impl Clone for BufferLine
impl Clone for BufferLine
Source§fn clone(&self) -> BufferLine
fn clone(&self) -> BufferLine
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more