diff options
author | 2020-01-02 18:07:00 +0100 | |
---|---|---|
committer | 2020-01-02 18:11:45 +0100 | |
commit | 986f01237f227ad2eaabda982324fc26840cb12b (patch) | |
tree | 336f86caea33f07676d20d8383c78dc9d9875674 /examples/progress_bar.rs | |
parent | bf8f83decc039494d310f6ecbb05cbab2c241cbf (diff) | |
download | iced-986f01237f227ad2eaabda982324fc26840cb12b.tar.gz iced-986f01237f227ad2eaabda982324fc26840cb12b.tar.bz2 iced-986f01237f227ad2eaabda982324fc26840cb12b.zip |
change(widget): make height adjustable at widget level
addtionally rename Progressbar to ProgressBar
Diffstat (limited to 'examples/progress_bar.rs')
-rw-r--r-- | examples/progress_bar.rs | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/examples/progress_bar.rs b/examples/progress_bar.rs new file mode 100644 index 00000000..56f54903 --- /dev/null +++ b/examples/progress_bar.rs @@ -0,0 +1,64 @@ +use iced::{ + settings::Window, slider, Background, Color, Column, Element, Length, + Sandbox, Settings, Slider, +}; +use iced_winit::ProgressBar; + +pub fn main() { + Progress::run(Settings { + window: Window { + size: (700, 300), + resizable: true, + decorations: true, + }, + }) +} + +#[derive(Default)] +struct Progress { + value: f32, + progress_bar_slider: slider::State, +} + +#[derive(Debug, Clone, Copy)] +enum Message { + SliderChanged(f32), +} + +impl Sandbox for Progress { + type Message = Message; + + fn new() -> Self { + Self::default() + } + + fn title(&self) -> String { + String::from("A simple Progressbar") + } + + fn update(&mut self, message: Message) { + match message { + Message::SliderChanged(x) => self.value = x, + } + } + + fn view(&mut self) -> Element<Message> { + Column::new() + .padding(20) + .push( + ProgressBar::new(0.0..=100.0, self.value) + .background(Background::Color(Color::from_rgb( + 0.6, 0.6, 0.6, + ))) + .active_color(Color::from_rgb(0.0, 0.95, 0.0)) + .height(Length::Units(30)), + ) + .push(Slider::new( + &mut self.progress_bar_slider, + 0.0..=100.0, + self.value, + Message::SliderChanged, + )) + .into() + } +} |