diff options
| author | 2024-05-03 09:34:28 +0200 | |
|---|---|---|
| committer | 2024-05-03 09:34:28 +0200 | |
| commit | 38cf87cb45484c7e52ddf775fb3abd7edbecc652 (patch) | |
| tree | ea1d229fda688008bd31c285b2dfe5e444983efc /examples/ferris/src | |
| parent | 1cefe6be210cdae8c6769673e8d23c6781a988f1 (diff) | |
| parent | 4c658c41e9e5bf2c0c963ef49c1830257781b16e (diff) | |
| download | iced-38cf87cb45484c7e52ddf775fb3abd7edbecc652.tar.gz iced-38cf87cb45484c7e52ddf775fb3abd7edbecc652.tar.bz2 iced-38cf87cb45484c7e52ddf775fb3abd7edbecc652.zip  | |
Merge pull request #2423 from iced-rs/center-widget-helper
Introduce `center` widget helper
Diffstat (limited to 'examples/ferris/src')
| -rw-r--r-- | examples/ferris/src/main.rs | 77 | 
1 files changed, 38 insertions, 39 deletions
diff --git a/examples/ferris/src/main.rs b/examples/ferris/src/main.rs index b7536740..13d746dd 100644 --- a/examples/ferris/src/main.rs +++ b/examples/ferris/src/main.rs @@ -1,6 +1,6 @@  use iced::time::Instant;  use iced::widget::{ -    checkbox, column, container, image, pick_list, row, slider, text, +    center, checkbox, column, container, image, pick_list, row, slider, text,  };  use iced::window;  use iced::{ @@ -87,28 +87,22 @@ impl Image {      }      fn view(&self) -> Element<Message> { -        let i_am_ferris = container( -            column![ -                "Hello!", -                Element::from( -                    image(format!( -                        "{}/../tour/images/ferris.png", -                        env!("CARGO_MANIFEST_DIR") -                    )) -                    .width(self.width) -                    .content_fit(self.content_fit) -                    .rotation(self.rotation) -                ) -                .explain(Color::WHITE), -                "I am Ferris!" -            ] -            .spacing(20) -            .align_items(Alignment::Center), -        ) -        .width(Length::Fill) -        .height(Length::Fill) -        .center_x() -        .center_y(); +        let i_am_ferris = column![ +            "Hello!", +            Element::from( +                image(format!( +                    "{}/../tour/images/ferris.png", +                    env!("CARGO_MANIFEST_DIR") +                )) +                .width(self.width) +                .content_fit(self.content_fit) +                .rotation(self.rotation) +            ) +            .explain(Color::WHITE), +            "I am Ferris!" +        ] +        .spacing(20) +        .align_items(Alignment::Center);          let sizing = row![              pick_list( @@ -126,13 +120,14 @@ impl Image {              column![                  slider(100.0..=500.0, self.width, Message::WidthChanged),                  text(format!("Width: {}px", self.width)) -                    .size(14) +                    .size(12)                      .line_height(1.0)              ] -            .spacing(5) +            .spacing(2)              .align_items(Alignment::Center)          ] -        .spacing(10); +        .spacing(10) +        .align_items(Alignment::End);          let rotation = row![              pick_list( @@ -144,30 +139,34 @@ impl Image {                  Message::RotationStrategyChanged,              )              .width(Length::Fill), -            row![ -                column![ +            column![ +                row![                      slider(                          Degrees::RANGE,                          self.rotation.degrees(),                          Message::RotationChanged                      ), -                    text(format!( -                        "Rotation: {:.0}°", -                        f32::from(self.rotation.degrees()) -                    )) -                    .size(14) -                    .line_height(1.0) +                    checkbox("Spin!", self.spin) +                        .text_size(12) +                        .on_toggle(Message::SpinToggled) +                        .size(12)                  ] -                .spacing(5) +                .spacing(10)                  .align_items(Alignment::Center), -                checkbox("Spin!", self.spin).on_toggle(Message::SpinToggled) +                text(format!( +                    "Rotation: {:.0}°", +                    f32::from(self.rotation.degrees()) +                )) +                .size(12) +                .line_height(1.0)              ] -            .spacing(5) +            .spacing(2)              .align_items(Alignment::Center)          ] -        .spacing(10); +        .spacing(10) +        .align_items(Alignment::End); -        container(column![i_am_ferris, sizing, rotation].spacing(10)) +        container(column![center(i_am_ferris), sizing, rotation].spacing(10))              .padding(10)              .into()      }  | 
