pub trait FormattableTextDyn: Debug {
fn clone_boxed(&self) -> Box<dyn FormattableTextDyn + 'static, Global>;
fn str_len(&self) -> usize;
fn as_str(&self) -> &str;
fn font_tokens(&self, dpem: f32) -> OwningVecIter<FontToken>ⓘNotable traits for OwningVecIter<T>impl<T> Iterator for OwningVecIter<T>where
T: Clone, type Item = T;;
fn effect_tokens(&self) -> &[Effect<()>];
}Expand description
Text, optionally with formatting data
This is an object-safe version of the FormattableText trait (i.e.
dyn FormattableTextDyn is a valid type).
This trait is auto-implemented for every implementation of FormattableText.
The type &dyn FormattableTextDyn implements FormattableText.
Implement either this or (preferably) FormattableText, not both.
Required Methods
sourcefn clone_boxed(&self) -> Box<dyn FormattableTextDyn + 'static, Global>
fn clone_boxed(&self) -> Box<dyn FormattableTextDyn + 'static, Global>
Produce a boxed clone of self
sourcefn font_tokens(&self, dpem: f32) -> OwningVecIter<FontToken>ⓘNotable traits for OwningVecIter<T>impl<T> Iterator for OwningVecIter<T>where
T: Clone, type Item = T;
fn font_tokens(&self, dpem: f32) -> OwningVecIter<FontToken>ⓘNotable traits for OwningVecIter<T>impl<T> Iterator for OwningVecIter<T>where
T: Clone, type Item = T;
T: Clone, type Item = T;
Construct an iterator over formatting items
It is expected that FontToken::start of yielded items is strictly
increasing; if not, formatting may not be applied correctly.
The dpem parameter is font size as in crate::Environment.
For plain text this iterator will be empty.
sourcefn effect_tokens(&self) -> &[Effect<()>]
fn effect_tokens(&self) -> &[Effect<()>]
Get the sequence of effect tokens
This method has some limitations: (1) it may only return a reference to
an existing sequence, (2) effect tokens cannot be generated dependent
on input state, and (3) it does not incorporate color information. For
most uses it should still be sufficient, but for other cases it may be
preferable not to use this method (use a dummy implementation returning
&[] and use inherent methods on the text object via Text::text).
Trait Implementations
sourceimpl<'t> FormattableText for &'t (dyn FormattableTextDyn + 't)
impl<'t> FormattableText for &'t (dyn FormattableTextDyn + 't)
sourcefn font_tokens(&self, dpem: f32) -> OwningVecIter<FontToken>ⓘNotable traits for OwningVecIter<T>impl<T> Iterator for OwningVecIter<T>where
T: Clone, type Item = T;
fn font_tokens(&self, dpem: f32) -> OwningVecIter<FontToken>ⓘNotable traits for OwningVecIter<T>impl<T> Iterator for OwningVecIter<T>where
T: Clone, type Item = T;
T: Clone, type Item = T;
Construct an iterator over formatting items Read more
sourcefn effect_tokens(&self) -> &[Effect<()>]
fn effect_tokens(&self) -> &[Effect<()>]
Get the sequence of effect tokens Read more