irox-egui-extras

Crates.ioirox-egui-extras
lib.rsirox-egui-extras
version0.5.0
sourcesrc
created_at2023-09-05 02:58:05.808266
updated_at2024-10-30 02:41:44.446791
descriptionExtras & tweaks for the egui framework
homepagehttps://github.com/spmadden/irox
repositoryhttps://github.com/spmadden/irox
max_upload_size
id963837
size210,914
Sean Madden (spmadden)

documentation

README

irox Extras for egui

Stuff that should have been in egui, but isn't.

Features

Widgets:

EGUI/Serde Serializer for Debugging Objects visually:

Use:

    let object = (); // your object that impls Serialize
let mut ser = EguiSerializer::new();
if let Ok(()) = obj.serialize( & mut ser) {
ser.show(ui);
}

In the above screenshot, ui is a Window

ProgressBar

Drop-in replacement of egui's ProgressBar widget with some tweaks:

  • Removes the animated spinner for performance
  • Adds the ability to mark the bar as 'indeterminate' and show a bouncing bar back and forth
  • Adds the ability to right align, center, and left align text in the bar. These are not mutually exclusive, and you can have text in all three positions simultaneously.

Frames, Apps, & Infrastructure

ToolFrame & ToolApp

Boilerplate bootstraps to make writing tools in egui easier. See the screenshot above for an example of the ToolFrame.

You must impl ToolApp to use ToolFrame

StylePersistingApp

Wraps your App impl to automatically persist your App state to disk. Requires features serde

CompositeApp

Allows you to compose multiple Apps together. The update method will be called sequentially, in the order the apps are provided.

Commit count: 1107

cargo fmt