Add support for setting window icon
This adds a new property from Settings:🪟:iconand a Icon struct which can be converted to winit:🪟:Icon. It also adds code to display this icon in Application::run. Due to the fact that the Icon struct is non copyable, I also had to remove the Copy trait from all Settings, both in `iced` and `iced_winit`.
This commit is contained in:
parent
1bc69e7a8a
commit
9a037a23e9
4 changed files with 45 additions and 4 deletions
|
|
@ -1,5 +1,5 @@
|
|||
/// The window settings of an application.
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct Settings {
|
||||
/// The initial size of the window.
|
||||
pub size: (u32, u32),
|
||||
|
|
@ -15,6 +15,9 @@ pub struct Settings {
|
|||
|
||||
/// Whether the window should have a border, a title bar, etc. or not.
|
||||
pub decorations: bool,
|
||||
|
||||
/// The window icon, which is also usually used in the taskbar
|
||||
pub icon: Option<iced_winit::settings::Icon>,
|
||||
}
|
||||
|
||||
impl Default for Settings {
|
||||
|
|
@ -25,6 +28,7 @@ impl Default for Settings {
|
|||
max_size: None,
|
||||
resizable: true,
|
||||
decorations: true,
|
||||
icon: None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -38,6 +42,7 @@ impl From<Settings> for iced_winit::settings::Window {
|
|||
max_size: settings.max_size,
|
||||
resizable: settings.resizable,
|
||||
decorations: settings.decorations,
|
||||
icon: settings.icon,
|
||||
platform_specific: Default::default(),
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue