pub struct ModalProps {Show 37 fields
pub open: bool,
pub title: Option<String>,
pub footer: Option<Element>,
pub footer_render: Option<Rc<dyn Fn(Element, FooterExtra) -> Element>>,
pub show_footer: bool,
pub on_ok: Option<EventHandler<()>>,
pub on_cancel: Option<EventHandler<()>>,
pub closable: bool,
pub closable_config: Option<ClosableConfig>,
pub mask_closable: bool,
pub destroy_on_close: bool,
pub destroy_on_hidden: bool,
pub force_render: bool,
pub width: Option<f32>,
pub width_responsive: Option<HashMap<String, f32>>,
pub centered: bool,
pub confirm_loading: bool,
pub ok_text: Option<String>,
pub cancel_text: Option<String>,
pub ok_type: Option<ButtonType>,
pub keyboard: bool,
pub close_icon: Option<Element>,
pub after_close: Option<EventHandler<()>>,
pub after_open_change: Option<EventHandler<bool>>,
pub class: Option<String>,
pub style: Option<String>,
pub class_names: Option<ModalClassNames>,
pub styles: Option<ModalStyles>,
pub get_container: Option<String>,
pub z_index: Option<i32>,
pub mask: Option<MaskConfig>,
pub modal_render: Option<Rc<dyn Fn(Element) -> Element>>,
pub mouse_position: Option<(f32, f32)>,
pub loading: bool,
pub ok_button_props: Option<HashMap<String, String>>,
pub cancel_button_props: Option<HashMap<String, String>>,
pub children: Element,
}Expand description
Basic modal props, targeting the most common controlled use cases.
Fields§
§open: boolWhether the modal is visible.
title: Option<String>Optional title displayed in the header.
Custom footer content. When None, default OK/Cancel buttons are shown.
Can be an Element or a function: (originNode, extra) -> Element
Custom footer render function: (originNode, extra) -> Element
When provided, this takes precedence over footer.
Whether to show the footer (set to false to hide default footer).
on_ok: Option<EventHandler<()>>Called when the user confirms the dialog.
on_cancel: Option<EventHandler<()>>Called when the user cancels or dismisses the dialog.
closable: boolWhen true, show a close button in the top-right corner. Can also be a ClosableConfig object for advanced configuration.
closable_config: Option<ClosableConfig>Advanced closable configuration (takes precedence over closable boolean).
mask_closable: boolWhether clicking the mask should trigger on_cancel.
destroy_on_close: boolRemove modal content from the tree when closed.
Remove modal content from the tree when hidden (since 5.25.0).
force_render: boolForce render Modal even when not visible.
width: Option<f32>Optional fixed width for the modal content in pixels. Can also be a responsive width map: { xs: 300, sm: 400, … }
width_responsive: Option<HashMap<String, f32>>Responsive width configuration: { breakpoint: width }
centered: boolWhether to vertically center the modal.
confirm_loading: boolWhether the OK button is in loading state.
ok_text: Option<String>OK button text.
cancel_text: Option<String>Cancel button text.
ok_type: Option<ButtonType>OK button type.
keyboard: boolWhether to enable keyboard (Escape to close).
close_icon: Option<Element>Custom close icon element.
after_close: Option<EventHandler<()>>Callback after modal closes completely.
after_open_change: Option<EventHandler<bool>>Callback when modal open state changes.
class: Option<String>Additional CSS class on the root container.
style: Option<String>Inline styles applied to the root container.
class_names: Option<ModalClassNames>Semantic class names.
styles: Option<ModalStyles>Semantic styles.
get_container: Option<String>Custom container for modal rendering (selector string or “false” to disable portal).
z_index: Option<i32>Custom z-index for the modal.
mask: Option<MaskConfig>Mask configuration (style, closable, etc.).
modal_render: Option<Rc<dyn Fn(Element) -> Element>>Custom modal render function: (node) -> Element
mouse_position: Option<(f32, f32)>Mouse position for modal placement (x, y).
loading: boolLoading state for the entire modal (since 5.18.0).
OK button props.
Cancel button props.
children: ElementImplementations§
Source§impl ModalProps
impl ModalProps
Sourcepub fn builder() -> ModalPropsBuilder<((), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), ())>
pub fn builder() -> ModalPropsBuilder<((), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), ())>
Create a builder for building ModalProps.
On the builder, call .open(...), .title(...)(optional), .footer(...)(optional), .footer_render(...)(optional), .show_footer(...)(optional), .on_ok(...)(optional), .on_cancel(...)(optional), .closable(...)(optional), .closable_config(...)(optional), .mask_closable(...)(optional), .destroy_on_close(...)(optional), .destroy_on_hidden(...)(optional), .force_render(...)(optional), .width(...)(optional), .width_responsive(...)(optional), .centered(...)(optional), .confirm_loading(...)(optional), .ok_text(...)(optional), .cancel_text(...)(optional), .ok_type(...)(optional), .keyboard(...)(optional), .close_icon(...)(optional), .after_close(...)(optional), .after_open_change(...)(optional), .class(...)(optional), .style(...)(optional), .class_names(...)(optional), .styles(...)(optional), .get_container(...)(optional), .z_index(...)(optional), .mask(...)(optional), .modal_render(...)(optional), .mouse_position(...)(optional), .loading(...)(optional), .ok_button_props(...)(optional), .cancel_button_props(...)(optional), .children(...)(optional) to set the values of the fields.
Finally, call .build() to create the instance of ModalProps.
Trait Implementations§
Source§impl Clone for ModalProps
impl Clone for ModalProps
Source§fn clone(&self) -> ModalProps
fn clone(&self) -> ModalProps
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more