diff --git a/README.md b/README.md index 3ce696d6..539b2265 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ ui.horizontal(|ui| { ui.label("Your name: "); ui.text_edit_singleline(&mut name); }); -ui.add(egui::Slider::u32(&mut age, 0..=120).text("age")); +ui.add(egui::Slider::new(&mut age, 0..=120).text("age")); if ui.button("Click each year").clicked() { age += 1; } diff --git a/eframe/examples/hello_world.rs b/eframe/examples/hello_world.rs index b7ac1ac6..aaabfd54 100644 --- a/eframe/examples/hello_world.rs +++ b/eframe/examples/hello_world.rs @@ -28,7 +28,7 @@ impl epi::App for MyApp { ui.label("Your name: "); ui.text_edit_singleline(name); }); - ui.add(egui::Slider::u32(age, 0..=120).text("age")); + ui.add(egui::Slider::new(age, 0..=120).text("age")); if ui.button("Click each year").clicked() { *age += 1; } diff --git a/egui/src/introspection.rs b/egui/src/introspection.rs index 03e43a46..91a0f807 100644 --- a/egui/src/introspection.rs +++ b/egui/src/introspection.rs @@ -61,7 +61,7 @@ impl Widget for &mut epaint::text::FontDefinitions { for (text_style, (_family, size)) in self.family_and_size.iter_mut() { // TODO: radio button for family ui.add( - Slider::f32(size, 4.0..=40.0) + Slider::new(size, 4.0..=40.0) .max_decimals(0) .text(format!("{:?}", text_style)), ); diff --git a/egui/src/lib.rs b/egui/src/lib.rs index 906067db..8d48a84f 100644 --- a/egui/src/lib.rs +++ b/egui/src/lib.rs @@ -67,7 +67,7 @@ //! ui.hyperlink("https://github.com/emilk/egui"); //! ui.text_edit_singleline(&mut my_string); //! if ui.button("Click me").clicked() { } -//! ui.add(egui::Slider::f32(&mut my_f32, 0.0..=100.0)); +//! ui.add(egui::Slider::new(&mut my_f32, 0.0..=100.0)); //! ui.add(egui::DragValue::f32(&mut my_f32)); //! //! ui.checkbox(&mut my_boolean, "Checkbox"); diff --git a/egui/src/style.rs b/egui/src/style.rs index 901053b8..f883446b 100644 --- a/egui/src/style.rs +++ b/egui/src/style.rs @@ -491,7 +491,7 @@ impl Style { ui.collapsing("📏 Spacing", |ui| spacing.ui(ui)); ui.collapsing("☝ Interaction", |ui| interaction.ui(ui)); ui.collapsing("🎨 Visuals", |ui| visuals.ui(ui)); - ui.add(Slider::f32(animation_time, 0.0..=1.0).text("animation_time")); + ui.add(Slider::new(animation_time, 0.0..=1.0).text("animation_time")); ui.vertical_centered(|ui| reset_button(ui, self)); } @@ -517,12 +517,12 @@ impl Spacing { ui.add(slider_vec2(button_padding, 0.0..=10.0, "button_padding")); ui.add(slider_vec2(interact_size, 0.0..=60.0, "interact_size")) .on_hover_text("Minimum size of an interactive widget"); - ui.add(Slider::f32(indent, 0.0..=100.0).text("indent")); - ui.add(Slider::f32(slider_width, 0.0..=1000.0).text("slider_width")); - ui.add(Slider::f32(text_edit_width, 0.0..=1000.0).text("text_edit_width")); - ui.add(Slider::f32(icon_width, 0.0..=60.0).text("icon_width")); - ui.add(Slider::f32(icon_spacing, 0.0..=10.0).text("icon_spacing")); - ui.add(Slider::f32(tooltip_width, 0.0..=1000.0).text("tooltip_width")); + ui.add(Slider::new(indent, 0.0..=100.0).text("indent")); + ui.add(Slider::new(slider_width, 0.0..=1000.0).text("slider_width")); + ui.add(Slider::new(text_edit_width, 0.0..=1000.0).text("text_edit_width")); + ui.add(Slider::new(icon_width, 0.0..=60.0).text("icon_width")); + ui.add(Slider::new(icon_spacing, 0.0..=10.0).text("icon_spacing")); + ui.add(Slider::new(tooltip_width, 0.0..=1000.0).text("tooltip_width")); ui.vertical_centered(|ui| reset_button(ui, self)); } @@ -535,9 +535,9 @@ impl Interaction { resize_grab_radius_corner, show_tooltips_only_when_still, } = self; - ui.add(Slider::f32(resize_grab_radius_side, 0.0..=20.0).text("resize_grab_radius_side")); + ui.add(Slider::new(resize_grab_radius_side, 0.0..=20.0).text("resize_grab_radius_side")); ui.add( - Slider::f32(resize_grab_radius_corner, 0.0..=20.0).text("resize_grab_radius_corner"), + Slider::new(resize_grab_radius_corner, 0.0..=20.0).text("resize_grab_radius_corner"), ); ui.checkbox( show_tooltips_only_when_still, @@ -599,9 +599,9 @@ impl WidgetVisuals { ui_color(ui, bg_fill, "bg_fill"); stroke_ui(ui, bg_stroke, "bg_stroke"); - ui.add(Slider::f32(corner_radius, 0.0..=10.0).text("corner_radius")); + ui.add(Slider::new(corner_radius, 0.0..=10.0).text("corner_radius")); stroke_ui(ui, fg_stroke, "fg_stroke (text)"); - ui.add(Slider::f32(expansion, -5.0..=5.0).text("expansion")); + ui.add(Slider::new(expansion, -5.0..=5.0).text("expansion")); } } @@ -669,7 +669,7 @@ impl Visuals { // Common shortcuts ui_color(ui, &mut widgets.noninteractive.bg_fill, "Fill"); stroke_ui(ui, &mut widgets.noninteractive.bg_stroke, "Outline"); - ui.add(Slider::f32(window_corner_radius, 0.0..=20.0).text("Corner Radius")); + ui.add(Slider::new(window_corner_radius, 0.0..=20.0).text("Corner Radius")); shadow_ui(ui, window_shadow, "Shadow"); }); ui_color( @@ -681,10 +681,10 @@ impl Visuals { ui_color(ui, extreme_bg_color, "extreme_bg_color"); ui_color(ui, hyperlink_color, "hyperlink_color"); ui_color(ui, code_bg_color, "code_bg_color"); - ui.add(Slider::f32(resize_corner_size, 0.0..=20.0).text("resize_corner_size")); - ui.add(Slider::f32(text_cursor_width, 0.0..=2.0).text("text_cursor_width")); + ui.add(Slider::new(resize_corner_size, 0.0..=20.0).text("resize_corner_size")); + ui.add(Slider::new(text_cursor_width, 0.0..=2.0).text("text_cursor_width")); ui.checkbox(text_cursor_preview, "text_cursor_preview"); - ui.add(Slider::f32(clip_rect_margin, 0.0..=20.0).text("clip_rect_margin")); + ui.add(Slider::new(clip_rect_margin, 0.0..=20.0).text("clip_rect_margin")); ui.group(|ui| { ui.label("DEBUG:"); @@ -712,8 +712,8 @@ fn slider_vec2<'a>( ) -> impl Widget + 'a { move |ui: &mut crate::Ui| { ui.horizontal(|ui| { - ui.add(Slider::f32(&mut value.x, range.clone()).text("w")); - ui.add(Slider::f32(&mut value.y, range.clone()).text("h")); + ui.add(Slider::new(&mut value.x, range.clone()).text("w")); + ui.add(Slider::new(&mut value.y, range.clone()).text("h")); ui.label(text); }) .response diff --git a/egui/src/ui.rs b/egui/src/ui.rs index dc7253c5..fd8f0659 100644 --- a/egui/src/ui.rs +++ b/egui/src/ui.rs @@ -784,7 +784,7 @@ impl Ui { /// ``` /// # let mut ui = egui::Ui::__test(); /// # let mut my_value = 42; - /// let response = ui.add(egui::Slider::i32(&mut my_value, 0..=100)); + /// let response = ui.add(egui::Slider::new(&mut my_value, 0..=100)); /// response.on_hover_text("Drag me!"); /// ``` pub fn add(&mut self, widget: impl Widget) -> Response { diff --git a/egui/src/widgets/mod.rs b/egui/src/widgets/mod.rs index f0a115e8..dcc48c1f 100644 --- a/egui/src/widgets/mod.rs +++ b/egui/src/widgets/mod.rs @@ -48,8 +48,8 @@ pub trait Widget { /// pub fn slider_vec2(value: &mut egui::Vec2) -> impl egui::Widget + '_ { /// move |ui: &mut egui::Ui| { /// ui.horizontal(|ui| { -/// ui.add(egui::Slider::f32(&mut value.x, 0.0..=1.0).text("x")); -/// ui.add(egui::Slider::f32(&mut value.y, 0.0..=1.0).text("y")); +/// ui.add(egui::Slider::new(&mut value.x, 0.0..=1.0).text("x")); +/// ui.add(egui::Slider::new(&mut value.y, 0.0..=1.0).text("y")); /// }) /// .response /// } diff --git a/egui/src/widgets/slider.rs b/egui/src/widgets/slider.rs index 38c28ddb..f45c4392 100644 --- a/egui/src/widgets/slider.rs +++ b/egui/src/widgets/slider.rs @@ -47,7 +47,7 @@ struct SliderSpec { /// ``` /// # let ui = &mut egui::Ui::__test(); /// # let mut my_f32: f32 = 0.0; -/// ui.add(egui::Slider::f32(&mut my_f32, 0.0..=100.0).text("My value")); +/// ui.add(egui::Slider::new(&mut my_f32, 0.0..=100.0).text("My value")); /// ``` #[must_use = "You should put this widget in an ui with `ui.add(widget);`"] pub struct Slider<'a> { @@ -67,6 +67,7 @@ pub struct Slider<'a> { macro_rules! impl_integer_constructor { ($int:ident) => { + #[deprecated = "Use Slider::new instead"] pub fn $int(value: &'a mut $int, range: RangeInclusive<$int>) -> Self { let range_f64 = (*range.start() as f64)..=(*range.end() as f64); Self::from_get_set(range_f64, move |v: Option| { @@ -97,6 +98,7 @@ impl<'a> Slider<'a> { } } + #[deprecated = "Use Slider::new instead"] pub fn f32(value: &'a mut f32, range: RangeInclusive) -> Self { let range_f64 = (*range.start() as f64)..=(*range.end() as f64); Self::from_get_set(range_f64, move |v: Option| { @@ -107,6 +109,7 @@ impl<'a> Slider<'a> { }) } + #[deprecated = "Use Slider::new instead"] pub fn f64(value: &'a mut f64, range: RangeInclusive) -> Self { Self::from_get_set(range, move |v: Option| { if let Some(v) = v { diff --git a/egui_demo_lib/src/apps/demo/demo_window.rs b/egui_demo_lib/src/apps/demo/demo_window.rs index bdd70347..60c177c1 100644 --- a/egui_demo_lib/src/apps/demo/demo_window.rs +++ b/egui_demo_lib/src/apps/demo/demo_window.rs @@ -58,7 +58,7 @@ impl View for DemoWindow { .show(ui, |ui| self.tree.ui(ui)); ui.collapsing("Columns", |ui| { - ui.add(Slider::usize(&mut self.num_columns, 1..=10).text("Columns")); + ui.add(Slider::new(&mut self.num_columns, 1..=10).text("Columns")); ui.columns(self.num_columns, |cols| { for (i, col) in cols.iter_mut().enumerate() { col.label(format!("Column {} out of {}", i + 1, self.num_columns)); @@ -198,11 +198,11 @@ impl Default for BoxPainting { impl BoxPainting { pub fn ui(&mut self, ui: &mut Ui) { - ui.add(Slider::f32(&mut self.size.x, 0.0..=500.0).text("width")); - ui.add(Slider::f32(&mut self.size.y, 0.0..=500.0).text("height")); - ui.add(Slider::f32(&mut self.corner_radius, 0.0..=50.0).text("corner_radius")); - ui.add(Slider::f32(&mut self.stroke_width, 0.0..=10.0).text("stroke_width")); - ui.add(Slider::usize(&mut self.num_boxes, 0..=8).text("num_boxes")); + ui.add(Slider::new(&mut self.size.x, 0.0..=500.0).text("width")); + ui.add(Slider::new(&mut self.size.y, 0.0..=500.0).text("height")); + ui.add(Slider::new(&mut self.corner_radius, 0.0..=50.0).text("corner_radius")); + ui.add(Slider::new(&mut self.stroke_width, 0.0..=10.0).text("stroke_width")); + ui.add(Slider::new(&mut self.num_boxes, 0..=8).text("num_boxes")); ui.horizontal_wrapped(|ui| { for _ in 0..self.num_boxes { diff --git a/egui_demo_lib/src/apps/demo/layout_test.rs b/egui_demo_lib/src/apps/demo/layout_test.rs index 3cfbf720..adb305a0 100644 --- a/egui_demo_lib/src/apps/demo/layout_test.rs +++ b/egui_demo_lib/src/apps/demo/layout_test.rs @@ -119,10 +119,10 @@ impl LayoutTest { if self.main_wrap { if self.main_dir.is_horizontal() { - ui.add(Slider::f32(&mut self.wrap_row_height, 0.0..=200.0).text("Row height")); + ui.add(Slider::new(&mut self.wrap_row_height, 0.0..=200.0).text("Row height")); } else { ui.add( - Slider::f32(&mut self.wrap_column_width, 0.0..=200.0).text("Column width"), + Slider::new(&mut self.wrap_column_width, 0.0..=200.0).text("Column width"), ); } } diff --git a/egui_demo_lib/src/apps/demo/scrolling.rs b/egui_demo_lib/src/apps/demo/scrolling.rs index 32f5369d..e632c99a 100644 --- a/egui_demo_lib/src/apps/demo/scrolling.rs +++ b/egui_demo_lib/src/apps/demo/scrolling.rs @@ -47,7 +47,7 @@ impl super::View for Scrolling { ui.horizontal(|ui| { ui.label("Scroll to a specific item index:"); track_item |= ui - .add(Slider::usize(&mut self.track_item, 1..=50).text("Track Item")) + .add(Slider::new(&mut self.track_item, 1..=50).text("Track Item")) .dragged(); }); diff --git a/egui_demo_lib/src/apps/demo/sliders.rs b/egui_demo_lib/src/apps/demo/sliders.rs index 9c7cd311..e0722615 100644 --- a/egui_demo_lib/src/apps/demo/sliders.rs +++ b/egui_demo_lib/src/apps/demo/sliders.rs @@ -73,7 +73,7 @@ impl super::View for Sliders { if *integer { let mut value_i32 = *value as i32; ui.add( - Slider::i32(&mut value_i32, (*min as i32)..=(*max as i32)) + Slider::new(&mut value_i32, (*min as i32)..=(*max as i32)) .logarithmic(*logarithmic) .clamp_to_range(*clamp_to_range) .smart_aim(*smart_aim) @@ -82,7 +82,7 @@ impl super::View for Sliders { *value = value_i32 as f64; } else { ui.add( - Slider::f64(value, (*min)..=(*max)) + Slider::new(value, (*min)..=(*max)) .logarithmic(*logarithmic) .clamp_to_range(*clamp_to_range) .smart_aim(*smart_aim) @@ -102,13 +102,13 @@ impl super::View for Sliders { ui.separator(); ui.label("Slider range:"); ui.add( - Slider::f64(min, type_min..=type_max) + Slider::new(min, type_min..=type_max) .logarithmic(true) .smart_aim(*smart_aim) .text("left"), ); ui.add( - Slider::f64(max, type_min..=type_max) + Slider::new(max, type_min..=type_max) .logarithmic(true) .smart_aim(*smart_aim) .text("right"), diff --git a/egui_demo_lib/src/apps/demo/tests.rs b/egui_demo_lib/src/apps/demo/tests.rs index 90b3476e..d7da92a3 100644 --- a/egui_demo_lib/src/apps/demo/tests.rs +++ b/egui_demo_lib/src/apps/demo/tests.rs @@ -140,13 +140,13 @@ impl super::View for ManualLayoutTest { }); egui::Grid::new("pos_size").show(ui, |ui| { ui.label("Widget position:"); - ui.add(egui::Slider::f32(&mut widget_offset.x, 0.0..=400.0)); - ui.add(egui::Slider::f32(&mut widget_offset.y, 0.0..=400.0)); + ui.add(egui::Slider::new(&mut widget_offset.x, 0.0..=400.0)); + ui.add(egui::Slider::new(&mut widget_offset.y, 0.0..=400.0)); ui.end_row(); ui.label("Widget size:"); - ui.add(egui::Slider::f32(&mut widget_size.x, 0.0..=400.0)); - ui.add(egui::Slider::f32(&mut widget_size.y, 0.0..=400.0)); + ui.add(egui::Slider::new(&mut widget_size.x, 0.0..=400.0)); + ui.add(egui::Slider::new(&mut widget_size.y, 0.0..=400.0)); ui.end_row(); }); @@ -207,13 +207,13 @@ impl super::Demo for TableTest { impl super::View for TableTest { fn ui(&mut self, ui: &mut egui::Ui) { ui.add( - egui::Slider::f32(&mut self.min_col_width, 0.0..=400.0).text("Minimum column width"), + egui::Slider::new(&mut self.min_col_width, 0.0..=400.0).text("Minimum column width"), ); ui.add( - egui::Slider::f32(&mut self.max_col_width, 0.0..=400.0).text("Maximum column width"), + egui::Slider::new(&mut self.max_col_width, 0.0..=400.0).text("Maximum column width"), ); - ui.add(egui::Slider::usize(&mut self.num_cols, 0..=5).text("Columns")); - ui.add(egui::Slider::usize(&mut self.num_rows, 0..=20).text("Rows")); + ui.add(egui::Slider::new(&mut self.num_cols, 0..=5).text("Columns")); + ui.add(egui::Slider::new(&mut self.num_rows, 0..=20).text("Rows")); ui.separator(); diff --git a/egui_demo_lib/src/apps/demo/widget_gallery.rs b/egui_demo_lib/src/apps/demo/widget_gallery.rs index b396761f..ecc332aa 100644 --- a/egui_demo_lib/src/apps/demo/widget_gallery.rs +++ b/egui_demo_lib/src/apps/demo/widget_gallery.rs @@ -147,7 +147,7 @@ impl WidgetGallery { ui.end_row(); ui.add(doc_link_label("Slider", "Slider")); - ui.add(egui::Slider::f32(scalar, 0.0..=360.0).suffix("°")); + ui.add(egui::Slider::new(scalar, 0.0..=360.0).suffix("°")); ui.end_row(); ui.add(doc_link_label("DragValue", "DragValue")); diff --git a/egui_demo_lib/src/apps/fractal_clock.rs b/egui_demo_lib/src/apps/fractal_clock.rs index 285e5786..4f956144 100644 --- a/egui_demo_lib/src/apps/fractal_clock.rs +++ b/egui_demo_lib/src/apps/fractal_clock.rs @@ -84,12 +84,12 @@ impl FractalClock { ui.label(format!("Painted line count: {}", self.line_count)); ui.checkbox(&mut self.paused, "Paused"); - ui.add(Slider::f32(&mut self.zoom, 0.0..=1.0).text("zoom")); - ui.add(Slider::f32(&mut self.start_line_width, 0.0..=5.0).text("Start line width")); - ui.add(Slider::usize(&mut self.depth, 0..=14).text("depth")); - ui.add(Slider::f32(&mut self.length_factor, 0.0..=1.0).text("length factor")); - ui.add(Slider::f32(&mut self.luminance_factor, 0.0..=1.0).text("luminance factor")); - ui.add(Slider::f32(&mut self.width_factor, 0.0..=1.0).text("width factor")); + ui.add(Slider::new(&mut self.zoom, 0.0..=1.0).text("zoom")); + ui.add(Slider::new(&mut self.start_line_width, 0.0..=5.0).text("Start line width")); + ui.add(Slider::new(&mut self.depth, 0..=14).text("depth")); + ui.add(Slider::new(&mut self.length_factor, 0.0..=1.0).text("length factor")); + ui.add(Slider::new(&mut self.luminance_factor, 0.0..=1.0).text("luminance factor")); + ui.add(Slider::new(&mut self.width_factor, 0.0..=1.0).text("width factor")); egui::reset_button(ui, self); diff --git a/egui_demo_lib/src/wrap_app.rs b/egui_demo_lib/src/wrap_app.rs index 688cae89..e7ef04b4 100644 --- a/egui_demo_lib/src/wrap_app.rs +++ b/egui_demo_lib/src/wrap_app.rs @@ -293,7 +293,7 @@ impl BackendPanel { ui.separator(); ui.add( - egui::Slider::f32(&mut self.max_size_points_ui.x, 512.0..=f32::INFINITY) + egui::Slider::new(&mut self.max_size_points_ui.x, 512.0..=f32::INFINITY) .logarithmic(true) .largest_finite(8192.0) .text("Max width"), @@ -350,7 +350,7 @@ impl BackendPanel { ui.horizontal(|ui| { ui.spacing_mut().slider_width = 90.0; ui.add( - egui::Slider::f32(pixels_per_point, 0.5..=5.0) + egui::Slider::new(pixels_per_point, 0.5..=5.0) .logarithmic(true) .text("Scale"), )