icon_button

Function icon_button 

Source
pub fn icon_button(args: impl Into<IconButtonArgs>, ripple_state: RippleState)
Expand description

§icon_button

Renders a standard button with an icon as its content.

§Usage

Use for common actions like “edit”, “delete”, or “settings” in a toolbar or list item.

§Parameters

  • args — configures the underlying button and the icon; see IconButtonArgs.
  • ripple_state — a clonable RippleState to manage the ripple animation.

§Examples

use std::sync::Arc;
use tessera_ui_basic_components::{
    icon_button::{icon_button, IconButtonArgsBuilder},
    button::ButtonArgsBuilder,
    icon::IconArgsBuilder,
    image_vector::{ImageVectorSource, load_image_vector_from_source},
    ripple_state::RippleState,
};

let ripple_state = RippleState::new();
let svg_path = "../assets/emoji_u1f416.svg";
let vector_data = load_image_vector_from_source(
    &ImageVectorSource::Path(svg_path.to_string())
).unwrap();

icon_button(
    IconButtonArgsBuilder::default()
        .button(
            ButtonArgsBuilder::default()
                .on_click(Arc::new(|| {}))
                .build()
                .unwrap()
        )
        .icon(IconArgsBuilder::default().content(vector_data.clone()).build().expect("builder construction failed"))
        .build()
        .unwrap(),
    ripple_state,
);