plushie/widget/rich_text
Rich text widget builder. Displays individually styled spans.
Spans are encoded as a “spans” prop (list of maps), not as child nodes. Each span carries its own text content and optional style overrides.
Types
Border radius: uniform or per-corner (top-left, top-right, bottom-right, bottom-left).
pub type BorderRadius {
UniformRadius(Float)
PerCornerRadius(Float, Float, Float, Float)
}
Constructors
-
UniformRadius(Float) -
PerCornerRadius(Float, Float, Float, Float)
A single styled span within a rich text widget.
pub type Span {
Span(
text: String,
size: option.Option(Float),
font: option.Option(font.Font),
color: option.Option(color.Color),
line_height: option.Option(Float),
link: option.Option(String),
underline: option.Option(Bool),
strikethrough: option.Option(Bool),
padding: option.Option(padding.Padding),
highlight: option.Option(SpanHighlight),
)
}
Constructors
-
Span( text: String, size: option.Option(Float), font: option.Option(font.Font), color: option.Option(color.Color), line_height: option.Option(Float), link: option.Option(String), underline: option.Option(Bool), strikethrough: option.Option(Bool), padding: option.Option(padding.Padding), highlight: option.Option(SpanHighlight), )
Highlight behind a span’s text.
pub type SpanHighlight {
SpanHighlight(
background: option.Option(color.Color),
border_color: option.Option(color.Color),
border_width: option.Option(Float),
border_radius: option.Option(BorderRadius),
)
}
Constructors
-
SpanHighlight( background: option.Option(color.Color), border_color: option.Option(color.Color), border_width: option.Option(Float), border_radius: option.Option(BorderRadius), )
Values
pub fn span(text: String) -> Span
Create a span with the given text and no style overrides.
pub fn span_highlight(s: Span, h: SpanHighlight) -> Span
Set the highlight on a span.
pub fn span_padding(s: Span, p: padding.Padding) -> Span
Set the padding on a span.
pub fn span_to_prop_value(s: Span) -> node.PropValue
Encode a single span to a PropValue dict.
pub fn wrapping(rt: RichText, w: wrapping.Wrapping) -> RichText
Set the text wrapping mode.