pub struct TextWidget { /* private fields */ }Implementations§
Source§impl TextWidget
impl TextWidget
Sourcepub fn new(text: impl Into<LocalizedString>) -> Self
pub fn new(text: impl Into<LocalizedString>) -> Self
Construct a text widget whose content is a LocalizedString. The
text may come from tr!(...) (reactive, re-resolves on locale
change) or from lit!("…") for genuinely
non-translated strings.
Sourcepub fn color(self, color: impl Into<ColorProp>) -> Self
pub fn color(self, color: impl Into<ColorProp>) -> Self
Set the text color. Accepts any impl Into<ColorProp>:
- A raw
Color— a frozen literal. - A
TextRole— resolved against the theme at paint time (reactive across theme switches). - A
Signal<Color>— reactive state (typically interaction-driven).
The default role is TextRole::Primary, so .color(...) is only
needed when a label wants a non-default theme role (Secondary,
Error, Accent, …) or a custom color.
Sourcepub fn style(self, style: impl Into<TextStyleProp>) -> Self
pub fn style(self, style: impl Into<TextStyleProp>) -> Self
Set the text style. Accepts a raw TextStyle, a
TextStyleRole, or any value implementing
Into<TextStyleProp>. Using a role resolves at paint/layout time, so
theme typography changes take effect without a rebuild.
Sourcepub fn overflow(self, overflow: TextOverflow) -> Self
pub fn overflow(self, overflow: TextOverflow) -> Self
Set how the widget handles text that doesn’t fit in the proposed
width. Default is TextOverflow::Wrap.
Sourcepub fn single_line(self) -> Self
pub fn single_line(self) -> Self
Shorthand for .overflow(TextOverflow::Ellipsis(EllipsisMode::Trailing)).
Use this on labels inside single-line containers (buttons, menu items,
tab headers, badges, status bar cells, etc.) so long text truncates
with a trailing “…” instead of wrapping onto multiple lines.
Sourcepub fn min_shrink_width(self, min: f32) -> Self
pub fn min_shrink_width(self, min: f32) -> Self
Override the compression floor for single-line / ellipsis text — the narrowest width an over-constrained stack may shrink this label to before truncating stops. Defaults to the ellipsis-glyph width.
Sourcepub fn no_shrink(self) -> Self
pub fn no_shrink(self) -> Self
Opt this label out of native shrink: it reports a rigid size and overflows (rather than truncating) when its stack is over-constrained.
Sourcepub fn max_lines(self, n: usize) -> Self
pub fn max_lines(self, n: usize) -> Self
Cap the paragraph at n lines when wrapping. Only meaningful
in TextOverflow::Wrap mode — ignored for ellipsis modes.
Lines beyond the cap are silently dropped.
Sourcepub fn text_backend(self, backend: Rc<RefCell<dyn TextBackend>>) -> Self
pub fn text_backend(self, backend: Rc<RefCell<dyn TextBackend>>) -> Self
Override the text backend used for measurement and rasterization.
In normal app code the framework provides the backend automatically;
this method is used by headless tests that inject a MockTextBackend.
Sourcepub fn text(self, state: impl Into<Prop<String>>) -> Self
pub fn text(self, state: impl Into<Prop<String>>) -> Self
Set the text content. Accepts a static String/&str or a reactive
Signal<String> / Prop<String> (resolved and re-rendered on change).
Sourcepub fn resolved_text(&self) -> String
pub fn resolved_text(&self) -> String
Get the current text value (resolves from state if bound).
Sourcepub fn markup(self, enabled: bool) -> Self
pub fn markup(self, enabled: bool) -> Self
Enable inline markup parsing. When enabled, the text is parsed as a minimal markdown subset:
[label](url)— inline link*italic*— italic run**bold**— bold run
Links are dispatched via on_link_click
and colored using theme.colors.text_link.
Sourcepub fn on_link_click<F>(self, handler: F) -> Self
pub fn on_link_click<F>(self, handler: F) -> Self
Called when an inline link is tapped. Enables markup automatically.
Sourcepub fn on_link_hover<F>(self, handler: F) -> Self
pub fn on_link_hover<F>(self, handler: F) -> Self
Called when an inline link is hovered (enter/leave). Receives
the URL, a bool indicating whether the pointer entered (true)
or left (false), and the widget-local rect of the link span
(so anchoring popups next to the link is cheap). Enables markup
automatically.
Hide this text from the accessibility tree. Use this when the
TextWidget is a visual label fragment inside another control
that already owns its accessible name via set_name —
otherwise screen readers announce the same string twice
(once for the control, once for the embedded Label node).
Standalone body text (dialog descriptions, form instructions,
read-only display values) should NOT set this — it stays as a
Role::Label node.
Sourcepub fn geometry_handle(&self) -> TextGeometryHandle
pub fn geometry_handle(&self) -> TextGeometryHandle
A handle onto what this label last measured.
For the controls that own their accessible name but paint their
text through a hidden TextWidget — Badge, GroupHeader — and
so have to emit that text’s runs from their own node. The handle
is empty until the label has been placed, and the geometry it
carries is in window space, so the borrower reports it as absolute.
The borrower must place the donor rigidly at its own origin: a move re-places absolute rects by the borrower’s delta, so a composite that repositions its donor independently should register local rects instead.
Trait Implementations§
Source§impl Debug for TextWidget
impl Debug for TextWidget
Source§impl Widget for TextWidget
impl Widget for TextWidget
Source§fn place_children(
&self,
bounds: Rect,
_proposal: SizeProposal,
_children: &mut [WidgetPlacement],
ctx: &LayoutContext<'_>,
)
fn place_children( &self, bounds: Rect, _proposal: SizeProposal, _children: &mut [WidgetPlacement], ctx: &LayoutContext<'_>, )
Shape once more at the final width, and keep what came back.
This is the only pass that sees the width the label actually got:
layout_response runs speculatively, more than once, at proposals
the parent may not honour. The accessibility tree needs the real
one — a label that wraps at 200 dp has a different set of lines,
and therefore of text runs, from the same label at 400 dp.
The call mirrors paint’s exactly, including its + 0.5 width
epsilon, so both land on the same backend cache entry. Under a
scale transform (a zoomed SceneView, a Scale wrapper) the
ambient raster scale differs between this pass and paint, so the
two hit different entries: the metrics are identical — the cache
keys on raster scale only for glyph density — and the geometry is
right either way, at the cost of one extra shaping per (text,
scale).
Source§fn build(&mut self, ctx: &mut BuildContext<'_>) -> Vec<WidgetId>
fn build(&mut self, ctx: &mut BuildContext<'_>) -> Vec<WidgetId>
BindingLevel::Rebuild binding, rebuild_single_widget, or a density
switch. A theme or locale switch does not rebuild: set_theme and
set_locale mark layout + paint dirty and leave the built subtree
standing, so anything derived from the theme or the locale must be read
per pass or bound to a signal rather than captured here.
Takes &mut self — store child IDs, signal handles, any state needed later.
Returns the list of root child IDs (empty for leaf widgets).Source§fn layout_response(
&self,
proposal: SizeProposal,
ctx: &LayoutContext<'_>,
) -> LayoutResponse
fn layout_response( &self, proposal: SizeProposal, ctx: &LayoutContext<'_>, ) -> LayoutResponse
LayoutResponse). Read moreSource§fn paint(&self, bounds: Rect, canvas: &mut Canvas, ctx: &PaintContext<'_>)
fn paint(&self, bounds: Rect, canvas: &mut Canvas, ctx: &PaintContext<'_>)
Source§fn accessibility(&self, builder: &mut AccessNodeBuilder)
fn accessibility(&self, builder: &mut AccessNodeBuilder)
Source§fn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
"teksilo_widgets::button::Button"). The default implementation
resolves at the impl site via std::any::type_name::<Self>(),
so calls through &dyn Widget correctly dispatch to the
monomorphized fn for the concrete type — getting the
concrete name through the vtable without per-impl boilerplate. Read moreSource§fn cacheable_layout(&self) -> bool
fn cacheable_layout(&self) -> bool
layout_response may be
memoized by the per-pass layout cache. Defaults to true. Read moreSource§fn wants_after_paint(&self) -> bool
fn wants_after_paint(&self) -> bool
after_paint
hook to fire each frame. Returning false (the default) saves
a virtual call per widget per frame for the vast majority of
widgets that don’t aggregate descendant geometry. Read moreSource§fn after_paint(&self, _view: &WidgetTreeView<'_>, _ctx: &PaintContext<'_>)
fn after_paint(&self, _view: &WidgetTreeView<'_>, _ctx: &PaintContext<'_>)
TitleBar aggregates its drag region and control-button
rects into a single HitRegions payload for the Windows
backend’s WM_NCHITTEST. Read moreSource§fn wants_post_paint(&self) -> bool
fn wants_post_paint(&self) -> bool
post_paint
hook to fire each frame. Returning false (the default) saves a
virtual call per widget per frame for the vast majority of widgets
that don’t draw a foreground over their children. Read moreSource§fn post_paint(
&self,
_bounds: Rect,
_canvas: &mut Canvas,
_ctx: &PaintContext<'_>,
)
fn post_paint( &self, _bounds: Rect, _canvas: &mut Canvas, _ctx: &PaintContext<'_>, )
Source§fn wants_descendant_redirects(&self) -> bool
fn wants_descendant_redirects(&self) -> bool
a11y_redirect_descendant
hook for every descendant during AT tree emission, not
just its direct arena children. Read moreSource§fn culls_children(&self) -> bool
fn culls_children(&self) -> bool
Source§fn a11y_redirect_descendant(
&self,
_self_id: WidgetId,
_descendant: WidgetId,
) -> Option<NodeId>
fn a11y_redirect_descendant( &self, _self_id: WidgetId, _descendant: WidgetId, ) -> Option<NodeId>
Source§fn accessible_title_hint(&self) -> Option<String>
fn accessible_title_hint(&self) -> Option<String>
Source§fn accessible_title_node(&self) -> Option<WidgetId>
fn accessible_title_node(&self) -> Option<WidgetId>
Source§fn initial_focus_hint(&self) -> Option<WidgetId>
fn initial_focus_hint(&self) -> Option<WidgetId>
Source§fn as_any(&self) -> Option<&(dyn Any + 'static)>
fn as_any(&self) -> Option<&(dyn Any + 'static)>
None; concrete
widgets override with Some(self) when they want to expose
their concrete type to test-level introspection or reflection.
The trait already bounds on std::any::Any so concrete types
satisfy the 'static requirement.Source§fn as_any_mut(&mut self) -> Option<&mut (dyn Any + 'static)>
fn as_any_mut(&mut self) -> Option<&mut (dyn Any + 'static)>
as_any. Default
returns None; widgets that want to expose mutable state to
tests (e.g. so a test can mutate a Scene inside a
SceneView post-layout) override with Some(self). Should
follow the same opt-in pattern as as_any: only widgets
that opt into & introspection should opt into &mut.Source§fn clips_children(&self) -> bool
fn clips_children(&self) -> bool
Source§fn focus_reveal_rect(&self, _bounds: Rect) -> Option<Rect>
fn focus_reveal_rect(&self, _bounds: Rect) -> Option<Rect>
None (the default) reveals the widget’s whole
bounds — correct for most controls. Read moreSource§fn hit_shape(&self, _local_point: Point, _bounds: Rect) -> bool
fn hit_shape(&self, _local_point: Point, _bounds: Rect) -> bool
false for a point that is inside
the bounding box makes the widget transparent to the click there,
so it falls through to whatever sibling is painted underneath
(the same machinery as a fully pass-through node, but shape-aware). Read moreSource§fn accepts_child_hit(&self, _child: WidgetId, _point: Point) -> bool
fn accepts_child_hit(&self, _child: WidgetId, _point: Point) -> bool
Source§fn hit_outset(&self, _kind: PointerKind, _tokens: &InputTokens) -> EdgeInsets
fn hit_outset(&self, _kind: PointerKind, _tokens: &InputTokens) -> EdgeInsets
Source§fn hit_slop(&self, _kind: PointerKind, _tokens: &InputTokens) -> Option<HitSlop>
fn hit_slop(&self, _kind: PointerKind, _tokens: &InputTokens) -> Option<HitSlop>
Source§fn hit_distance(&self, local_point: Point, bounds: Rect) -> Option<f32>
fn hit_distance(&self, local_point: Point, bounds: Rect) -> Option<f32>
Source§fn target_regions(&self, _bounds: Rect) -> Vec<TargetRegion>
fn target_regions(&self, _bounds: Rect) -> Vec<TargetRegion>
Source§fn preserves_children_on_rebuild(&self) -> bool
fn preserves_children_on_rebuild(&self) -> bool
rebuild_single_widget treats this widget’s existing children
when re-running its build(). Read moreSource§fn tooltip_has_content(&self) -> bool
fn tooltip_has_content(&self) -> bool
Source§fn declare_shortcuts(&self) -> Vec<Shortcut>
fn declare_shortcuts(&self) -> Vec<Shortcut>
build()) and at certain lazy
boundaries (e.g. Switcher walks declarations on its
not-yet-mounted Pending slots), so settings UIs and the
ShortcutRegistry see the keystrokes the moment the owning
container mounts — even if build() hasn’t run. Read moreSource§fn take_handler_set(&mut self) -> Option<HandlerSet>
fn take_handler_set(&mut self) -> Option<HandlerSet>
WidgetWithHandlers wrapper.
Called during arena insertion to transfer handlers to the WidgetNode.
Default: returns None (no attached handlers).Source§impl WidgetCatalog for TextWidget
impl WidgetCatalog for TextWidget
Source§fn id() -> &'static str
fn id() -> &'static str
"button", "tag_chip"). Used in
CLI args, navigator URLs, and persistence keys.Source§fn group() -> &'static str
fn group() -> &'static str
"Controls", "Containers", "Composites", …).Source§fn display_name() -> &'static str
fn display_name() -> &'static str
Source§fn knobs() -> KnobSpec
fn knobs() -> KnobSpec
Scenario variants leave this empty.Source§fn variants() -> Vec<PreviewVariant>
fn variants() -> Vec<PreviewVariant>
Source§fn build(_variant: &str, knobs: &KnobValues) -> Box<dyn Widget>
fn build(_variant: &str, knobs: &KnobValues) -> Box<dyn Widget>
Scenario paths and otherwise builds
via the knob values for Knobs variants.Source§fn icon() -> Option<Box<dyn Widget>>
fn icon() -> Option<Box<dyn Widget>>
None (the default) leaves the consumer to
substitute a generic fallback. Returns a Box<dyn Widget> (not
an IconWidget) so this crate stays free of any widgets-crate
dependency.Source§fn category() -> WidgetCategory
fn category() -> WidgetCategory
WidgetCategory::Leaf, is correct for every control; container
widgets override it.Source§fn slots() -> &'static [&'static str]
fn slots() -> &'static [&'static str]
WidgetCategory::ContainerB widget (e.g.
Card → ["header", "content", "footer"]). Empty for Leaf and
ContainerA.Source§fn build_with_children(
variant: &str,
knobs: &KnobValues,
children: Vec<SlottedChild>,
) -> Box<dyn Widget>
fn build_with_children( variant: &str, knobs: &KnobValues, children: Vec<SlottedChild>, ) -> Box<dyn Widget>
ContainerA folds
children as ordered bare children; ContainerB routes each by
its slot name; Leaf ignores them. The default ignores
children and delegates to build, so non-container
widgets need no override.Auto Trait Implementations§
impl !RefUnwindSafe for TextWidget
impl !Send for TextWidget
impl !Sync for TextWidget
impl !UnwindSafe for TextWidget
impl Freeze for TextWidget
impl Unpin for TextWidget
impl UnsafeUnpin for TextWidget
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.impl<T> ErasedDestructor for Twhere
T: 'static,
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> ⓘ
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> ⓘ
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<W> IntoTeksiChild for Wwhere
W: Widget + 'static,
impl<W> IntoTeksiChild for Wwhere
W: Widget + 'static,
fn into_pending(self) -> PendingChild
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<W> WidgetBuilder for Wwhere
W: Widget + 'static,
impl<W> WidgetBuilder for Wwhere
W: Widget + 'static,
fn on_tap( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_double_tap( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_triple_tap( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_long_press( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
on_tap. Default is ButtonMask::PRIMARY.on_double_tap. Default ButtonMask::PRIMARY.on_triple_tap. Default ButtonMask::PRIMARY.on_long_press. Default ButtonMask::PRIMARY.fn on_drag( self, f: impl FnMut(DragPhase, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_swipe( self, f: impl FnMut(SwipeDirection, f32, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_pinch( self, f: impl FnMut(PinchPhase, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_focus( self, f: impl FnMut(bool, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_key( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>
Source§fn on_key_preview(
self,
f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static,
) -> WidgetWithHandlers<Self>
fn on_key_preview( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>
HandlerSet::on_key_preview.fn on_pointer_event( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>
fn on_hover( self, f: impl FnMut(bool, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_scroll( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>
fn on_access_action( self, f: impl FnMut(Action, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>
fn focusable(self, focusable: bool) -> WidgetWithHandlers<Self>
fn tab_index(self, index: i32) -> WidgetWithHandlers<Self>
fn cursor(self, cursor: CursorIcon) -> WidgetWithHandlers<Self>
fn clips_children_on(self, clips: bool) -> WidgetWithHandlers<Self>
Source§fn ime_input(self, ctx: ImeContext) -> WidgetWithHandlers<Self>
fn ime_input(self, ctx: ImeContext) -> WidgetWithHandlers<Self>
ctx’s purpose) while it is focused. See crate::ime.Source§fn event_pass_through(self, pass_through: bool) -> WidgetWithHandlers<Self>
fn event_pass_through(self, pass_through: bool) -> WidgetWithHandlers<Self>
HandlerSet::event_pass_through.Source§fn gesture_dead_zone(self, dead_zone: bool) -> WidgetWithHandlers<Self>
fn gesture_dead_zone(self, dead_zone: bool) -> WidgetWithHandlers<Self>
HandlerSet::gesture_dead_zone.Source§fn long_press_role(self, role: LongPressRole) -> WidgetWithHandlers<Self>
fn long_press_role(self, role: LongPressRole) -> WidgetWithHandlers<Self>
HandlerSet::long_press_role.Source§fn touch_action(self, action: TouchAction) -> WidgetWithHandlers<Self>
fn touch_action(self, action: TouchAction) -> WidgetWithHandlers<Self>
HandlerSet::touch_action.Source§fn scroll_container(self, axes: PanAxes) -> WidgetWithHandlers<Self>
fn scroll_container(self, axes: PanAxes) -> WidgetWithHandlers<Self>
axes, kinetic, direct pointers
only. See HandlerSet::scroll_container.Source§fn pan_claim(self, claim: PanClaim) -> WidgetWithHandlers<Self>
fn pan_claim(self, claim: PanClaim) -> WidgetWithHandlers<Self>
PanClaim. See
HandlerSet::pan_claim.Source§fn overscroll_behavior(
self,
behavior: OverscrollBehavior,
) -> WidgetWithHandlers<Self>
fn overscroll_behavior( self, behavior: OverscrollBehavior, ) -> WidgetWithHandlers<Self>
HandlerSet::overscroll_behavior.Source§fn drag_activation(self, activation: DragActivation) -> WidgetWithHandlers<Self>
fn drag_activation(self, activation: DragActivation) -> WidgetWithHandlers<Self>
HandlerSet::drag_activation.Source§fn multi_contact(self, policy: MultiContact) -> WidgetWithHandlers<Self>
fn multi_contact(self, policy: MultiContact) -> WidgetWithHandlers<Self>
MultiContact::First — the second finger on a single-contact control
is terminated there rather than reaching an ancestor.Source§fn keyboard_capture(self, capture: bool) -> WidgetWithHandlers<Self>
fn keyboard_capture(self, capture: bool) -> WidgetWithHandlers<Self>
KeyDowns bypass shortcut resolution.
See HandlerSet::keyboard_capture.Source§fn hit_transparent(self, transparent: bool) -> WidgetWithHandlers<Self>
fn hit_transparent(self, transparent: bool) -> WidgetWithHandlers<Self>
HandlerSet::hit_transparent.Source§fn hit_slop(self, slop: HitSlop) -> WidgetWithHandlers<Self>
fn hit_slop(self, slop: HitSlop) -> WidgetWithHandlers<Self>
HandlerSet::hit_slop.Source§fn no_hit_slop(self) -> WidgetWithHandlers<Self>
fn no_hit_slop(self) -> WidgetWithHandlers<Self>
Widget::hit_outset. See HandlerSet::no_hit_slop.HandlerSet::context_menu for the full contract.Source§fn focus_within(self, signal: Signal<bool>) -> WidgetWithHandlers<Self>
fn focus_within(self, signal: Signal<bool>) -> WidgetWithHandlers<Self>
Signal<bool> the framework writes when a strict
descendant has focus. See HandlerSet::focus_within.Source§fn hover_within(self, signal: Signal<bool>) -> WidgetWithHandlers<Self>
fn hover_within(self, signal: Signal<bool>) -> WidgetWithHandlers<Self>
Signal<bool> the framework writes when a strict
descendant is hovered. See HandlerSet::hover_within.Source§fn visible_when(self, state: impl Into<Prop<bool>>) -> WidgetWithHandlers<Self>
fn visible_when(self, state: impl Into<Prop<bool>>) -> WidgetWithHandlers<Self>
bool / Signal<bool> / Prop<bool>) as
a builder property, so teksu! can write visible_when: sig. Equivalent
to ctx.visible_when(id, ..). See HandlerSet::visible_when.fn on_drag_hover( self, f: impl FnMut(&DragPayload, Point, &mut EventContext<'_>) -> DropFeedback + 'static, ) -> WidgetWithHandlers<Self>
fn on_drag_leave( self, f: impl FnMut(&mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
fn on_drag_tick( self, f: impl FnMut(Point, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
Source§fn on_pointer_cancel(
self,
f: impl FnMut(&PointerInfo, CancelReason, &mut EventContext<'_>) + 'static,
) -> WidgetWithHandlers<Self>
fn on_pointer_cancel( self, f: impl FnMut(&PointerInfo, CancelReason, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
HandlerSet::on_pointer_cancel.fn on_drop( self, f: impl FnMut(DragPayload, Point, &mut EventContext<'_>) -> bool + 'static, ) -> WidgetWithHandlers<Self>
Source§fn on_drag_ended(
self,
f: impl FnMut(DropOutcome, &mut EventContext<'_>) + 'static,
) -> WidgetWithHandlers<Self>
fn on_drag_ended( self, f: impl FnMut(DropOutcome, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>
HandlerSet::on_drag_ended.