Start implementing ggez example
This commit is contained in:
parent
2b7ad3d50e
commit
0eaffff422
5 changed files with 188 additions and 0 deletions
49
examples/ggez/main.rs
Normal file
49
examples/ggez/main.rs
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
mod renderer;
|
||||
mod widget;
|
||||
|
||||
use renderer::Renderer;
|
||||
use widget::Text;
|
||||
|
||||
use ggez;
|
||||
use ggez::event;
|
||||
use ggez::graphics;
|
||||
|
||||
use iced::Interface;
|
||||
|
||||
pub fn main() -> ggez::GameResult {
|
||||
let cb = ggez::ContextBuilder::new("iced", "ggez");
|
||||
let (ctx, event_loop) = &mut cb.build()?;
|
||||
let state = &mut Game::new()?;
|
||||
event::run(ctx, event_loop, state)
|
||||
}
|
||||
|
||||
struct Game {}
|
||||
|
||||
impl Game {
|
||||
fn new() -> ggez::GameResult<Game> {
|
||||
Ok(Game {})
|
||||
}
|
||||
}
|
||||
|
||||
impl event::EventHandler for Game {
|
||||
fn update(&mut self, _ctx: &mut ggez::Context) -> ggez::GameResult {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn draw(&mut self, context: &mut ggez::Context) -> ggez::GameResult {
|
||||
graphics::clear(context, [0.1, 0.2, 0.3, 1.0].into());
|
||||
|
||||
{
|
||||
let renderer = &mut Renderer { context };
|
||||
let ui: Interface<(), Renderer> =
|
||||
Interface::compute(Text::new("Hello, iced!").into(), renderer);
|
||||
|
||||
let mouse_cursor = ui.draw(renderer, iced::Point::new(0.0, 0.0));
|
||||
|
||||
renderer.flush();
|
||||
}
|
||||
|
||||
graphics::present(context)?;
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue