1use winit::{
2 event_loop::EventLoop,
3 window::{Window, WindowBuilder},
4 dpi::LogicalSize,
5};
6
7pub struct WindowState {
8 pub window: Window,
9}
10
11impl WindowState {
12 pub fn new(event_loop: &EventLoop<()>) -> Self {
13 let window = WindowBuilder::new()
14 .with_title("Wormhole")
15 .with_inner_size(LogicalSize::new(800.0, 600.0))
16 .build(event_loop)
17 .expect("Failed to create window");
18
19 Self { window }
20 }
21
22 pub fn set_title(&self, title: &str) {
23 self.window.set_title(title);
24 }
25
26 pub fn inner_size(&self) -> (u32, u32) {
27 let size = self.window.inner_size();
28 (size.width, size.height)
29 }
30}