1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
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(())
}
}
|