summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-09-19 03:40:38 +0200
committerLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-09-19 03:40:38 +0200
commite98a441b0fa0c1e2ddffe615a48f3fe23a4fedad (patch)
tree8537de98e17b627c827e8d181e6b595b08378c21
parent96615d5537d04f0b8d3938f417e08bbc3c34e1a9 (diff)
downloadiced-e98a441b0fa0c1e2ddffe615a48f3fe23a4fedad.tar.gz
iced-e98a441b0fa0c1e2ddffe615a48f3fe23a4fedad.tar.bz2
iced-e98a441b0fa0c1e2ddffe615a48f3fe23a4fedad.zip
Show `image` doc example in multiple places
-rw-r--r--widget/src/helpers.rs19
-rw-r--r--widget/src/image.rs38
2 files changed, 50 insertions, 7 deletions
diff --git a/widget/src/helpers.rs b/widget/src/helpers.rs
index 0699446d..bae2e10e 100644
--- a/widget/src/helpers.rs
+++ b/widget/src/helpers.rs
@@ -1047,7 +1047,26 @@ where
/// Creates a new [`Image`].
///
+/// Images display raster graphics in different formats (PNG, JPG, etc.).
+///
/// [`Image`]: crate::Image
+///
+/// # Example
+/// ```no_run
+/// # mod iced { pub mod widget { pub use iced_widget::*; } }
+/// # pub type State = ();
+/// # pub type Element<'a, Message> = iced_widget::core::Element<'a, Message, iced_widget::Theme, iced_widget::Renderer>;
+/// use iced::widget::image;
+///
+/// enum Message {
+/// // ...
+/// }
+///
+/// fn view(state: &State) -> Element<'_, Message> {
+/// image("ferris.png").into()
+/// }
+/// ```
+/// <img src="https://github.com/iced-rs/iced/blob/9712b319bb7a32848001b96bd84977430f14b623/examples/resources/ferris.png?raw=true" width="300">
#[cfg(feature = "image")]
pub fn image<Handle>(handle: impl Into<Handle>) -> crate::Image<Handle> {
crate::Image::new(handle.into())
diff --git a/widget/src/image.rs b/widget/src/image.rs
index e04f2d6f..c8f2a620 100644
--- a/widget/src/image.rs
+++ b/widget/src/image.rs
@@ -1,4 +1,21 @@
-//! Display images in your user interface.
+//! Images display raster graphics in different formats (PNG, JPG, etc.).
+//!
+//! # Example
+//! ```no_run
+//! # mod iced { pub mod widget { pub use iced_widget::*; } }
+//! # pub type State = ();
+//! # pub type Element<'a, Message> = iced_widget::core::Element<'a, Message, iced_widget::Theme, iced_widget::Renderer>;
+//! use iced::widget::image;
+//!
+//! enum Message {
+//! // ...
+//! }
+//!
+//! fn view(state: &State) -> Element<'_, Message> {
+//! image("ferris.png").into()
+//! }
+//! ```
+//! <img src="https://github.com/iced-rs/iced/blob/9712b319bb7a32848001b96bd84977430f14b623/examples/resources/ferris.png?raw=true" width="300">
pub mod viewer;
pub use viewer::Viewer;
@@ -22,16 +39,23 @@ pub fn viewer<Handle>(handle: Handle) -> Viewer<Handle> {
/// A frame that displays an image while keeping aspect ratio.
///
/// # Example
-///
/// ```no_run
-/// # use iced_widget::image::{self, Image};
-/// #
-/// let image = Image::<image::Handle>::new("resources/ferris.png");
-/// ```
+/// # mod iced { pub mod widget { pub use iced_widget::*; } }
+/// # pub type State = ();
+/// # pub type Element<'a, Message> = iced_widget::core::Element<'a, Message, iced_widget::Theme, iced_widget::Renderer>;
+/// use iced::widget::image;
///
+/// enum Message {
+/// // ...
+/// }
+///
+/// fn view(state: &State) -> Element<'_, Message> {
+/// image("ferris.png").into()
+/// }
+/// ```
/// <img src="https://github.com/iced-rs/iced/blob/9712b319bb7a32848001b96bd84977430f14b623/examples/resources/ferris.png?raw=true" width="300">
#[derive(Debug)]
-pub struct Image<Handle> {
+pub struct Image<Handle = image::Handle> {
handle: Handle,
width: Length,
height: Length,