From ab9dadf92434c3641e513022ba89032f3159e381 Mon Sep 17 00:00:00 2001 From: Simon Gardling Date: Fri, 22 Apr 2022 01:03:40 -0400 Subject: [PATCH] improve Riemman Sum Type selector --- src/math_app.rs | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/src/math_app.rs b/src/math_app.rs index a3c7ffc..422acbf 100644 --- a/src/math_app.rs +++ b/src/math_app.rs @@ -271,21 +271,30 @@ impl MathApp { .show(ctx, |ui| { let prev_sum = self.settings.riemann_sum; // ComboBox for selecting what Riemann sum type to use - ComboBox::from_label("Riemann Sum Type") - .selected_text(self.settings.riemann_sum.to_string()) - .show_ui(ui, |ui| { - ui.selectable_value(&mut self.settings.riemann_sum, Riemann::Left, "Left"); - ui.selectable_value( - &mut self.settings.riemann_sum, - Riemann::Middle, - "Middle", - ); - ui.selectable_value( - &mut self.settings.riemann_sum, - Riemann::Right, - "Right", - ); - }); + ui.add_enabled_ui( + self.functions.iter().filter(|func| func.integral).count() > 0, + |ui| { + ComboBox::from_label("Riemann Sum") + .selected_text(self.settings.riemann_sum.to_string()) + .show_ui(ui, |ui| { + ui.selectable_value( + &mut self.settings.riemann_sum, + Riemann::Left, + "Left", + ); + ui.selectable_value( + &mut self.settings.riemann_sum, + Riemann::Middle, + "Middle", + ); + ui.selectable_value( + &mut self.settings.riemann_sum, + Riemann::Right, + "Right", + ); + }); + }, + ); let riemann_changed = prev_sum != self.settings.riemann_sum;