Skip to main content

limnus_screen/
lib.rs

1/*
2 * Copyright (c) Peter Bjorklund. All rights reserved. https://github.com/swamp/limnus
3 * Licensed under the MIT License. See LICENSE in the project root for license information.
4 */
5use int_math::UVec2;
6use limnus_basic_input::prelude::TouchPhase;
7use limnus_message::prelude::Message;
8use limnus_resource::prelude::*;
9
10#[derive(Debug, Clone)]
11pub enum ScreenMode {
12    WindowedFullscreen,
13    Windowed,
14    WindowedOnTop,
15}
16
17#[derive(Debug, Resource, Clone)]
18pub struct Window {
19    pub mode: ScreenMode,
20    pub title: String,
21    pub requested_surface_size: UVec2,
22    pub minimal_surface_size: UVec2,
23}
24
25#[derive(Message, Debug)]
26pub enum WindowMessage {
27    CursorMoved(UVec2),
28    Touch(UVec2, TouchPhase),
29    WindowCreated(),
30    Resized(UVec2),
31}