diff options
author | 2020-06-01 22:01:28 +0200 | |
---|---|---|
committer | 2020-06-01 22:01:28 +0200 | |
commit | 2ba9598f8022bf3035d97f1a30e53117b9619235 (patch) | |
tree | d10476b912bf0d2920a83101d58141f51d7360f7 /src/settings.rs | |
parent | d34f8e06c8e3cdbba07a272f346163cfc0f920a6 (diff) | |
parent | a65d6a11cb82719a649110a8deaeb8f87e1c374b (diff) | |
download | iced-2ba9598f8022bf3035d97f1a30e53117b9619235.tar.gz iced-2ba9598f8022bf3035d97f1a30e53117b9619235.tar.bz2 iced-2ba9598f8022bf3035d97f1a30e53117b9619235.zip |
Merge pull request #371 from myfreeweb/window-alpha
Add custom window background/clear color (incl. transparency) support, fixes #272
Diffstat (limited to 'src/settings.rs')
-rw-r--r-- | src/settings.rs | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/src/settings.rs b/src/settings.rs index 01ad0ee0..1aa17571 100644 --- a/src/settings.rs +++ b/src/settings.rs @@ -1,8 +1,8 @@ //! Configure your application. -use crate::window; +use crate::{window, Color}; /// The settings of an application. -#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)] +#[derive(Debug, Clone, Copy, PartialEq)] pub struct Settings<Flags> { /// The window settings. /// @@ -32,6 +32,29 @@ pub struct Settings<Flags> { /// /// [`Canvas`]: ../widget/canvas/struct.Canvas.html pub antialiasing: bool, + + /// The background color of the window. + /// + /// On supported backends, this makes it possible to have + /// (semi-)transparent windows. + /// + /// By default, it is white. + pub background_color: Color, +} + +impl<Flags> Default for Settings<Flags> +where + Flags: Default, +{ + fn default() -> Self { + Self { + flags: Default::default(), + antialiasing: Default::default(), + default_font: Default::default(), + window: Default::default(), + background_color: Color::WHITE, + } + } } impl<Flags> Settings<Flags> { @@ -46,6 +69,7 @@ impl<Flags> Settings<Flags> { antialiasing: Default::default(), default_font: Default::default(), window: Default::default(), + background_color: Color::WHITE, } } } |