Trait me3_framework::overlay::Widget
source · [−]Expand description
Anything implementing Widget can be added to a Ui
with Ui::add
.
Button
, Label
, Slider
, etc all implement the Widget
trait.
Note that the widgets (Button
, TextEdit
etc) are
builders,
and not objects that hold state.
Tip: you can impl Widget for &mut YourThing { }
.
|ui: &mut Ui| -> Response { … }
also implements Widget
.
Required Methods
Implementors
impl Widget for &PaintStats
impl Widget for &mut TessellationOptions
impl Widget for Button
impl Widget for Hyperlink
impl Widget for Image
impl Widget for ImageButton
impl Widget for Label
impl Widget for Link
impl Widget for ProgressBar
impl Widget for RadioButton
impl Widget for SelectableLabel
impl Widget for Separator
impl Widget for Spinner
impl<'a> Widget for Checkbox<'a>
impl<'a> Widget for DragValue<'a>
impl<'a> Widget for Slider<'a>
impl<'t> Widget for TextEdit<'t>
impl<F> Widget for Fwhere
F: FnOnce(&mut Ui) -> Response,
This enables functions that return impl Widget
, so that you can
create a widget by just returning a lambda from a function.
For instance: ui.add(slider_vec2(&mut vec2));
with:
pub fn slider_vec2(value: &mut egui::Vec2) -> impl egui::Widget + '_ {
move |ui: &mut egui::Ui| {
ui.horizontal(|ui| {
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
}
}