color and sound display now

This commit is contained in:
2025-06-22 23:28:24 +02:00
parent 71d1311f9d
commit 5a22159ace
2 changed files with 31 additions and 9 deletions

View File

@@ -38,7 +38,7 @@ enum Message {
struct MyApp {
poly_frame: PolygonFrame,
time_last_frame: Instant,
nb_sec_for_rev: u32,
nb_sec_for_rev: f32,
audio_manager: AudioManager,
default_sound: StaticSoundData,
}
@@ -50,7 +50,7 @@ impl MyApp {
let sound_data = StaticSoundData::from_file("assets/tick.ogg").expect("Fail to load audio");
(
Self {
nb_sec_for_rev: 4,
nb_sec_for_rev: 4.0,
time_last_frame: Instant::now(),
audio_manager: manager,
default_sound: sound_data.clone(),
@@ -67,10 +67,10 @@ impl MyApp {
}
fn update(&mut self, message: Message) {
match message {
Message::ButtonPressedIncrement => self.nb_sec_for_rev += 1,
Message::ButtonPressedIncrement => self.nb_sec_for_rev += 0.5,
Message::ButtonPressedDecrement => {
if self.nb_sec_for_rev > 1 {
self.nb_sec_for_rev -= 1;
if self.nb_sec_for_rev > 0.5 {
self.nb_sec_for_rev -= 0.5;
}
}
Message::AddPolygon(s) => {
@@ -168,16 +168,18 @@ impl MyApp {
_ => c = Color::BLACK,
}
self.poly_frame.polygons[i].color = c;
self.poly_frame.polygons[i].color_name = s;
}
Message::ChangeSound(i, s) => {
self.poly_frame.polygons[i].sound =
StaticSoundData::from_file(s).expect("Fail to load audio")
StaticSoundData::from_file(&s).expect("Fail to load audio");
self.poly_frame.polygons[i].sound_name = s;
}
}
}
fn view(&self) -> iced::Element<Message> {
let txt_nb_rev = format!("Revolution per second : {}", self.nb_sec_for_rev);
let txt_nb_rev = format!("Number of second for revolution : {}", self.nb_sec_for_rev);
let mut i = 0;
//Create all polygon options
@@ -205,10 +207,10 @@ impl MyApp {
["Black", "Blue", "Green", "Pink", "Yellow", "Cyan"]
.map(|s| s.to_string())
.to_vec(),
Some("Color".to_string()),
Some(&polygon.color_name),
move |s| { Message::ChangeColor(current_index, s) }
),
pick_list(entries, Some("Sound".to_string()), move |s| {
pick_list(entries, Some(&polygon.sound_name), move |s| {
Message::ChangeSound(current_index, s)
}),
]