summaryrefslogtreecommitdiffstats
path: root/src/window
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2020-01-16 18:34:20 +0100
committerLibravatar GitHub <noreply@github.com>2020-01-16 18:34:20 +0100
commit11495b48eec8cdb6e4e3ae450983b26fe6b2eb15 (patch)
tree8574a5f51e2ab5ce7973b4f89658c5f15b53c31b /src/window
parent5de404ddd9484c6e1113697d749524ac79d8c763 (diff)
parentc96492b95660640eb2dd66a77c96ad32d5d5b0ae (diff)
downloadiced-11495b48eec8cdb6e4e3ae450983b26fe6b2eb15.tar.gz
iced-11495b48eec8cdb6e4e3ae450983b26fe6b2eb15.tar.bz2
iced-11495b48eec8cdb6e4e3ae450983b26fe6b2eb15.zip
Merge pull request #161 from hecrj/feature/window-mode
Window modes
Diffstat (limited to 'src/window')
-rw-r--r--src/window/mode.rs9
-rw-r--r--src/window/settings.rs22
2 files changed, 31 insertions, 0 deletions
diff --git a/src/window/mode.rs b/src/window/mode.rs
new file mode 100644
index 00000000..37464711
--- /dev/null
+++ b/src/window/mode.rs
@@ -0,0 +1,9 @@
+/// The mode of a window-based application.
+#[derive(Debug, Clone, Copy, PartialEq, Eq)]
+pub enum Mode {
+ /// The application appears in its own window.
+ Windowed,
+
+ /// The application takes the whole screen of its current monitor.
+ Fullscreen,
+}
diff --git a/src/window/settings.rs b/src/window/settings.rs
new file mode 100644
index 00000000..a31d2af2
--- /dev/null
+++ b/src/window/settings.rs
@@ -0,0 +1,22 @@
+/// The window settings of an application.
+#[derive(Debug, Clone, Copy, PartialEq, Eq)]
+pub struct Settings {
+ /// The size of the window.
+ pub size: (u32, u32),
+
+ /// Whether the window should be resizable or not.
+ pub resizable: bool,
+
+ /// Whether the window should have a border, a title bar, etc. or not.
+ pub decorations: bool,
+}
+
+impl Default for Settings {
+ fn default() -> Settings {
+ Settings {
+ size: (1024, 768),
+ resizable: true,
+ decorations: true,
+ }
+ }
+}