(
&mut self,
node_id: egui_snarl::NodeId,
_inputs: &[InPin],
_outputs: &[OutPin],
ui: &mut Ui,
snarl: &mut Snarl<GuiAudioNode>,
)
| 426 | } |
| 427 | |
| 428 | fn show_body( |
| 429 | &mut self, |
| 430 | node_id: egui_snarl::NodeId, |
| 431 | _inputs: &[InPin], |
| 432 | _outputs: &[OutPin], |
| 433 | ui: &mut Ui, |
| 434 | snarl: &mut Snarl<GuiAudioNode>, |
| 435 | ) { |
| 436 | let node = snarl.get_node_mut(node_id).unwrap(); |
| 437 | |
| 438 | ui.vertical(|ui| { |
| 439 | if ui.checkbox(&mut node.bypassed, "bypassed").clicked() { |
| 440 | self.audio_system |
| 441 | .event_queue(node.id) |
| 442 | .push_bypassed(node.bypassed); |
| 443 | } |
| 444 | |
| 445 | match &mut node.node { |
| 446 | GuiAudioNodeType::BeepTest { params } => { |
| 447 | let mut linear_volume = params.volume.linear(); |
| 448 | if ui |
| 449 | .add(egui::Slider::new(&mut linear_volume, 0.0..=1.0).text("volume")) |
| 450 | .changed() |
| 451 | { |
| 452 | params.volume = Volume::Linear(linear_volume); |
| 453 | } |
| 454 | |
| 455 | ui.add( |
| 456 | egui::Slider::new(&mut params.freq_hz, 20.0..=20_000.0) |
| 457 | .logarithmic(true) |
| 458 | .text("frequency"), |
| 459 | ); |
| 460 | |
| 461 | params.update_memo(&mut self.audio_system.event_queue(node.id)); |
| 462 | } |
| 463 | GuiAudioNodeType::WhiteNoiseGen { params } => { |
| 464 | let mut linear_volume = params.volume.linear(); |
| 465 | if ui |
| 466 | .add(egui::Slider::new(&mut linear_volume, 0.0..=0.5).text("volume")) |
| 467 | .changed() |
| 468 | { |
| 469 | params.volume = Volume::Linear(linear_volume); |
| 470 | } |
| 471 | |
| 472 | params.update_memo(&mut self.audio_system.event_queue(node.id)); |
| 473 | } |
| 474 | GuiAudioNodeType::PinkNoiseGen { params } => { |
| 475 | let mut linear_volume = params.volume.linear(); |
| 476 | if ui |
| 477 | .add(egui::Slider::new(&mut linear_volume, 0.0..=0.5).text("volume")) |
| 478 | .changed() |
| 479 | { |
| 480 | params.volume = Volume::Linear(linear_volume); |
| 481 | } |
| 482 | |
| 483 | params.update_memo(&mut self.audio_system.event_queue(node.id)); |
| 484 | } |
| 485 | GuiAudioNodeType::VolumeMono { params } |
nothing calls this directly
no test coverage detected