Skip to main content

euv_ui/component/progress/view/
struct.rs

1use super::*;
2
3/// Props for the `euv_progress` component.
4///
5/// Defines the strongly-typed interface for a determinate progress bar.
6/// The fill level is owned by the caller through a `Signal<f64>` so the
7/// bar can be driven by a download, a form submission, or a timer.
8#[derive(Clone, CustomDebug, Data, Default, New)]
9pub struct EuvProgressProps {
10    /// The completion percentage in the `0.0..=100.0` range; values
11    /// outside it are clamped by [`progress_percent_clamp`].
12    #[get(type(copy))]
13    pub percent: Signal<f64>,
14    /// The label text displayed beside the bar.
15    #[get(type(copy))]
16    pub label: &'static str,
17    /// Whether the bar is currently advancing; drives the animated
18    /// running style instead of the settled one.
19    #[get(type(copy))]
20    pub active: Signal<bool>,
21}