Add image feture for iced, and add image logo into Welvom stage.

This commit is contained in:
2026-04-17 20:15:44 +02:00
parent 825ea5225b
commit f20593d9ab
4 changed files with 693 additions and 14 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

+25 -12
View File
@@ -30,7 +30,7 @@ pub enum Message {
impl WelcomeStage {
pub fn new() -> Self {
println!("{:?}", rust_i18n::available_locales!());
Self {
locale: Some(LocData {
name: "English".into(),
@@ -98,17 +98,29 @@ impl WelcomeStage {
let next_button = widget::button(widget::text(t!("button.next"))).on_press(Message::Next);
let exit_button = widget::button(widget::text(t!("button.exit"))).on_press(Message::Exit);
// Embed the image bytes into the executable
let welcom_logo_handle =
widget::image::Handle::from_bytes(include_bytes!("media/logo.png").to_vec());
widget::column![
widget::container(widget::column![
widget::text(t!("wellcome.text")),
widget::text(t!("wellcome.choose_language")),
widget::pick_list(
self.locales.clone(),
self.locale.clone(),
Message::SelectLocale,
)
.placeholder("Select Language")
].padding(10).spacing(10).align_x(Alignment::Center))
widget::container(
widget::column![
widget::image(welcom_logo_handle)
.width(iced::Pixels(128.0))
.height(iced::Pixels(128.0)),
widget::text(t!("wellcome.text")),
widget::text(t!("wellcome.choose_language")),
widget::pick_list(
self.locales.clone(),
self.locale.clone(),
Message::SelectLocale,
)
.placeholder("Select Language")
]
.padding(10)
.spacing(10)
.align_x(Alignment::Center)
)
.height(iced::Length::Fill)
.width(iced::Length::Fill)
.align_x(Alignment::Center)
@@ -119,7 +131,8 @@ impl WelcomeStage {
next_button
]
.width(iced::Length::Fill)
.align_y(Alignment::End).padding(10),
.align_y(Alignment::End)
.padding(10),
]
.align_x(Alignment::Center)
.spacing(10)