pub struct Orb { /* private fields */ }Expand description
Animated thinking-orb status indicator for AI / agent UIs.
cx.new(|_| Orb::new().state(OrbState::Searching).size(OrbSize::Avatar))Implementations§
Source§impl Orb
impl Orb
pub fn new() -> Self
pub fn state(self, state: OrbState) -> Self
pub fn size(self, size: OrbSize) -> Self
pub fn theme(self, theme: OrbTheme) -> Self
pub fn speed(self, speed: f32) -> Self
Sourcepub fn paused(self, paused: bool) -> Self
pub fn paused(self, paused: bool) -> Self
Same clock rules as Self::set_paused: entering pause records
paused_at; leaving folds the elapsed pause into paused_total.
pub fn reduced_motion(self, reduced: bool) -> Self
Sourcepub fn target_fps(self, fps: f32) -> Self
pub fn target_fps(self, fps: f32) -> Self
Cap the redraw rate. Values are clamped to 1.0..=240.0.
Lower is cheaper: cost scales linearly with this number.
Sourcepub fn pause_when_inactive(self, pause: bool) -> Self
pub fn pause_when_inactive(self, pause: bool) -> Self
Whether to freeze while the host window is inactive. Defaults to true.
A background window’s animation is not visible to anyone, so this is
usually free. Set it to false if the orb must keep moving in a window
that is visible but unfocused — a side panel, or a floating HUD.
Sourcepub fn visible(self, visible: bool) -> Self
pub fn visible(self, visible: bool) -> Self
Whether the host considers this orb on-screen. Defaults to true.
gpui has no intersection observer. When you keep the entity mounted in
a scrollable list but it has scrolled away, call
Self::set_visible(false) (or build with .visible(false)) so the
timer stops. Prefer unmounting when you can.
Sourcepub fn set_state(&mut self, state: OrbState, cx: &mut Context<'_, Self>)
pub fn set_state(&mut self, state: OrbState, cx: &mut Context<'_, Self>)
Mutable setters for interactive playgrounds.
pub fn set_size(&mut self, size: OrbSize, cx: &mut Context<'_, Self>)
pub fn set_theme(&mut self, theme: OrbTheme, cx: &mut Context<'_, Self>)
pub fn set_speed(&mut self, speed: f32, cx: &mut Context<'_, Self>)
pub fn set_paused(&mut self, paused: bool, cx: &mut Context<'_, Self>)
pub fn set_reduced_motion(&mut self, reduced: bool, cx: &mut Context<'_, Self>)
pub fn set_target_fps(&mut self, fps: f32, cx: &mut Context<'_, Self>)
pub fn set_pause_when_inactive( &mut self, pause: bool, cx: &mut Context<'_, Self>, )
Sourcepub fn set_visible(&mut self, visible: bool, cx: &mut Context<'_, Self>)
pub fn set_visible(&mut self, visible: bool, cx: &mut Context<'_, Self>)
Host visibility gate — see Self::visible.
pub fn state_value(&self) -> OrbState
pub fn size_value(&self) -> OrbSize
pub fn theme_value(&self) -> OrbTheme
pub fn speed_value(&self) -> f32
pub fn is_paused(&self) -> bool
pub fn reduced_motion_value(&self) -> bool
pub fn target_fps_value(&self) -> f32
pub fn pause_when_inactive_value(&self) -> bool
pub fn is_visible(&self) -> bool
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Orb
impl !Send for Orb
impl !Sync for Orb
impl !UnwindSafe for Orb
impl Freeze for Orb
impl Unpin for Orb
impl UnsafeUnpin for Orb
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> 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<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
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>
ReadEndian::read_from_little_endian().