A derive-macro for imgui.
```rust
struct Example { #[imgui(slider(min = 0.0, max = 4.0))] x: f32, #[imgui(input(step = 2))] y: i32, #[imgui(drag(label = "Drag 2D"))] drag_2d: [f32; 2], #[imgui(checkbox(label = "Turbo mode"))] turbo: bool, }
let mut example = Example { /* skipped */ };
ui.window(imstr!("Debug")).build(|| { use imguiext::UiExt;
if ui.draw_gui(&mut example).turbo() {
println!(
"Turbo mode value changed: {}",
example.turbo,
);
}
}); ```
```bash
cargo run --example codegen
cargo run --example ui
cargo run --example nalgebra ```
#[derive(imgui_ext::Gui)]
is only supported for struct
s with named fields.