From 15bd46228b15bb7b167a741d2c19b98868be90e9 Mon Sep 17 00:00:00 2001 From: Per Lindgren <per.lindgren@ltu.se> Date: Sun, 26 Jan 2020 03:48:51 +0100 Subject: [PATCH] envelope works --- examples/dial_test3.rs | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/examples/dial_test3.rs b/examples/dial_test3.rs index 84844fb..bc2dbb8 100644 --- a/examples/dial_test3.rs +++ b/examples/dial_test3.rs @@ -28,7 +28,7 @@ use log::info; use druid_widgets::*; -#[derive(Clone, Data, Lens)] +#[derive(Clone, Data, Lens, Default)] struct DialLabel { value: f64, } @@ -51,7 +51,7 @@ impl DialLabel { col } } -#[derive(Clone, Data, Lens)] +#[derive(Clone, Data, Lens, Default)] struct Envelope { attack: DialLabel, decay: DialLabel, @@ -62,29 +62,43 @@ struct Envelope { impl Envelope { fn new() -> impl Widget<Envelope> { let solid = Color::rgb8(0x3a, 0x3a, 0x3a); - let mut col = Flex::column(); - col.add_child( + let mut row = Flex::row(); + row.add_child( DialLabel::new("Attack") .lens(Envelope::attack) .background(solid.clone()) .padding(5.0), 0.0, ); - col.add_child( + row.add_child( DialLabel::new("Decay") .lens(Envelope::decay) .background(solid.clone()) .padding(5.0), 0.0, ); - col + row.add_child( + DialLabel::new("Sustain") + .lens(Envelope::sustain) + .background(solid.clone()) + .padding(5.0), + 0.0, + ); + row.add_child( + DialLabel::new("Release") + .lens(Envelope::release) + .background(solid.clone()) + .padding(5.0), + 0.0, + ); + row } } fn main() -> Result<(), PlatformError> { - AppLauncher::with_window(WindowDesc::new(|| DialLabel::new("Value"))) + AppLauncher::with_window(WindowDesc::new(Envelope::new)) .use_simple_logger() - .launch(DialLabel { value: 0.0 })?; + .launch(Envelope::default())?; Ok(()) } -- GitLab