egui_speedy2d

Crates.ioegui_speedy2d
lib.rsegui_speedy2d
version0.5.0
sourcesrc
created_at2022-10-22 21:14:30.295816
updated_at2024-05-08 19:19:09.323358
descriptionegui integration for speedy2d
homepage
repositoryhttps://github.com/heretik31/egui_speedy2d
max_upload_size
id694888
size79,827
(heretik31)

documentation

README

egui_speedy2d

crates.io | docs

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

Warning

The current version has only been tested on linux platform. It should work on windows platform. Not all features of egui has been tested. The work is still in progress. All merge-requests are welcome.

Basic example

use {
    egui_speedy2d::{WindowHandler, WindowWrapper},
    speedy2d::{color::Color, window::WindowHelper, Graphics2D, Window},
};

fn main() {
    simple_logger::SimpleLogger::new().init().unwrap();
    let window = Window::new_centered("Basic sample", (640, 240)).unwrap();
    window.run_loop(WindowWrapper::new(MyWindowHandler {}))
}

struct MyWindowHandler {}

impl 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 !");
        });
        helper.request_redraw();
    }
}

License

This project is licensed under

Any contribution intentionally submitted for inclusion by you, shall be licensed as above, without any additional terms or conditions.

Commit count: 9

cargo fmt