egui_speedy2d 0.1.0

egui integration for speedy2d
Documentation

egui_speedy2d

egui_speedy2d is a library that helps integrate egui, an immediate mode GUI library, with speedy2d, a 2D rendering framework.

Usage

The easiest way to use egui_speedy2d is to make your main WindowHandler struct implement egui_speedy2d's [WindowHandler] trait instead of speedy2d's. This will give you access to a egui_ctx context where you can do your GUI rendering.

struct MyWindowHandler;

impl egui_speedy2d::WindowHandler for MyWindowHandler {
fn on_draw(
&mut self,
helper: &mut WindowHelper,
graphics: &mut Graphics2D,
egui_ctx: &egui::Context,
) {
graphics.clear_screen(Color::WHITE);
egui::Window::new("Hello").show(&egui_ctx, |ui| {
ui.label("World !");
});
}
}

When running the speedy2d Window, wrap your handler struct in a [WindowHandler] to make it compatible with Speedy2d's speedy2d::windows::WindowHandler trait.

fn main() {
let window = speedy2d::Window::new_centered("Speedy2D: Hello World", (640, 240)).unwrap();
window.run_loop(egui_speedy2d::WindowWrapper::new(MyWindowHandler{}))
}