summaryrefslogtreecommitdiffstats
path: root/examples/screenshot/src/main.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector@hecrj.dev>2024-07-12 21:40:46 +0200
committerLibravatar GitHub <noreply@github.com>2024-07-12 21:40:46 +0200
commit8cadd3b99485c344feb18b774c8e6fd6c1ea9dd7 (patch)
tree826fa9e0acdf3a4e003f882c94ff24a4ac9f50e4 /examples/screenshot/src/main.rs
parentbe06060117da061ad8cad94ab0830c06def6b147 (diff)
parent3f480d3d18c41188bf40ead0a3dc4497316f11ae (diff)
downloadiced-8cadd3b99485c344feb18b774c8e6fd6c1ea9dd7.tar.gz
iced-8cadd3b99485c344feb18b774c8e6fd6c1ea9dd7.tar.bz2
iced-8cadd3b99485c344feb18b774c8e6fd6c1ea9dd7.zip
Merge pull request #2504 from iced-rs/view-ergonomics
Improved `view` ergonomics
Diffstat (limited to 'examples/screenshot/src/main.rs')
-rw-r--r--examples/screenshot/src/main.rs59
1 files changed, 24 insertions, 35 deletions
diff --git a/examples/screenshot/src/main.rs b/examples/screenshot/src/main.rs
index acde8367..2d980dd9 100644
--- a/examples/screenshot/src/main.rs
+++ b/examples/screenshot/src/main.rs
@@ -1,10 +1,10 @@
-use iced::alignment;
use iced::keyboard;
use iced::widget::{button, column, container, image, row, text, text_input};
use iced::window;
use iced::window::screenshot::{self, Screenshot};
use iced::{
- Alignment, ContentFit, Element, Length, Rectangle, Subscription, Task,
+ Center, ContentFit, Element, Fill, FillPortion, Rectangle, Subscription,
+ Task,
};
use ::image as img;
@@ -114,45 +114,37 @@ impl Example {
screenshot.clone(),
))
.content_fit(ContentFit::Contain)
- .width(Length::Fill)
- .height(Length::Fill)
+ .width(Fill)
+ .height(Fill)
.into()
} else {
text("Press the button to take a screenshot!").into()
};
let image = container(image)
- .center_y(Length::FillPortion(2))
+ .center_y(FillPortion(2))
.padding(10)
.style(container::rounded_box);
let crop_origin_controls = row![
- text("X:")
- .vertical_alignment(alignment::Vertical::Center)
- .width(30),
+ text("X:").width(30),
numeric_input("0", self.x_input_value).map(Message::XInputChanged),
- text("Y:")
- .vertical_alignment(alignment::Vertical::Center)
- .width(30),
+ text("Y:").width(30),
numeric_input("0", self.y_input_value).map(Message::YInputChanged)
]
.spacing(10)
- .align_items(Alignment::Center);
+ .align_y(Center);
let crop_dimension_controls = row![
- text("W:")
- .vertical_alignment(alignment::Vertical::Center)
- .width(30),
+ text("W:").width(30),
numeric_input("0", self.width_input_value)
.map(Message::WidthInputChanged),
- text("H:")
- .vertical_alignment(alignment::Vertical::Center)
- .width(30),
+ text("H:").width(30),
numeric_input("0", self.height_input_value)
.map(Message::HeightInputChanged)
]
.spacing(10)
- .align_items(Alignment::Center);
+ .align_y(Center);
let crop_controls =
column![crop_origin_controls, crop_dimension_controls]
@@ -162,7 +154,7 @@ impl Example {
.map(|error| text!("Crop error! \n{error}")),
)
.spacing(10)
- .align_items(Alignment::Center);
+ .align_x(Center);
let controls = {
let save_result =
@@ -178,8 +170,8 @@ impl Example {
column![
column![
button(centered_text("Screenshot!"))
- .padding([10, 20, 10, 20])
- .width(Length::Fill)
+ .padding([10, 20])
+ .width(Fill)
.on_press(Message::Screenshot),
if !self.png_saving {
button(centered_text("Save as png")).on_press_maybe(
@@ -190,8 +182,8 @@ impl Example {
.style(button::secondary)
}
.style(button::secondary)
- .padding([10, 20, 10, 20])
- .width(Length::Fill)
+ .padding([10, 20])
+ .width(Fill)
]
.spacing(10),
column![
@@ -199,23 +191,23 @@ impl Example {
button(centered_text("Crop"))
.on_press(Message::Crop)
.style(button::danger)
- .padding([10, 20, 10, 20])
- .width(Length::Fill),
+ .padding([10, 20])
+ .width(Fill),
]
.spacing(10)
- .align_items(Alignment::Center),
+ .align_x(Center),
]
.push_maybe(save_result.map(text))
.spacing(40)
};
- let side_content = container(controls).center_y(Length::Fill);
+ let side_content = container(controls).center_y(Fill);
let content = row![side_content, image]
.spacing(10)
- .width(Length::Fill)
- .height(Length::Fill)
- .align_items(Alignment::Center);
+ .width(Fill)
+ .height(Fill)
+ .align_y(Center);
container(content).padding(10).into()
}
@@ -276,8 +268,5 @@ fn numeric_input(
}
fn centered_text(content: &str) -> Element<'_, Message> {
- text(content)
- .width(Length::Fill)
- .horizontal_alignment(alignment::Horizontal::Center)
- .into()
+ text(content).width(Fill).align_x(Center).into()
}