1 use std::{thread, time};
2
3 use simple_logger::SimpleLogger;
4 use winit::{
5 event::{Event, WindowEvent},
6 event_loop::{ControlFlow, EventLoop},
7 window::WindowBuilder,
8 };
9
main()10 fn main() {
11 SimpleLogger::new().init().unwrap();
12 let event_loop = EventLoop::new();
13
14 let window = WindowBuilder::new()
15 .with_title("A fantastic window!")
16 .build(&event_loop)
17 .unwrap();
18
19 thread::spawn(move || loop {
20 thread::sleep(time::Duration::from_secs(1));
21 window.request_redraw();
22 });
23
24 event_loop.run(move |event, _, control_flow| {
25 println!("{:?}", event);
26
27 *control_flow = ControlFlow::Wait;
28
29 match event {
30 Event::WindowEvent { event, .. } => match event {
31 WindowEvent::CloseRequested => *control_flow = ControlFlow::Exit,
32 _ => (),
33 },
34 Event::RedrawRequested(_) => {
35 println!("\nredrawing!\n");
36 }
37 _ => (),
38 }
39 });
40 }
41