From 65a4dca0d965ca963428231173ca5fb9c672ab52 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Thu, 25 Jun 2020 00:32:41 +0200 Subject: Add `min_size` and `max_size` to `window::Settings` --- src/window/settings.rs | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'src/window') diff --git a/src/window/settings.rs b/src/window/settings.rs index a31d2af2..eb997899 100644 --- a/src/window/settings.rs +++ b/src/window/settings.rs @@ -1,9 +1,15 @@ /// The window settings of an application. #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub struct Settings { - /// The size of the window. + /// The initial size of the window. pub size: (u32, u32), + /// The minimum size of the window. + pub min_size: Option<(u32, u32)>, + + /// The maximum size of the window. + pub max_size: Option<(u32, u32)>, + /// Whether the window should be resizable or not. pub resizable: bool, @@ -15,8 +21,24 @@ impl Default for Settings { fn default() -> Settings { Settings { size: (1024, 768), + min_size: None, + max_size: None, resizable: true, decorations: true, } } } + +#[cfg(not(target_arch = "wasm32"))] +impl From for iced_winit::settings::Window { + fn from(settings: Settings) -> Self { + Self { + size: settings.size, + min_size: settings.min_size, + max_size: settings.max_size, + resizable: settings.resizable, + decorations: settings.decorations, + platform_specific: Default::default(), + } + } +} -- cgit