AlertDialog
专注确认操作的对话框变体,默认采用更严格的背景点击关闭策略。
正在加载交互演示…
let dialog = Dialog::alert("quit", open);
dialog.root().child(dialog.title_with(text("Quit without saving?")))#导入
从 quickgui 导入 Dialog。
use quickgui::*;#用法
let dialog = Dialog::alert("quit", open);
dialog.root().child(dialog.title_with(text("Quit without saving?")))#结构
Dialog::rootDialog::triggerDialog::portalDialog::backdropDialog::viewportDialog::popupDialog::titleDialog::descriptionDialog::close
#API 参考
展开条目查看说明和完整签名。短横线表示声明中未记录默认值。
Dialog
查看源码pub fn alert(id: impl Into<ElementId>, open: bool) -> SelfDeclare a consequential alert dialog. Escape remains enabled, while a backdrop press is blocked without dismissing by default.
newpub fn new(id: impl Into<ElementId>, open: bool) -> Self—
with_kindpub fn with_kind(id: impl Into<ElementId>, open: bool, kind: DialogKind) -> Self—
Configures with kind for this part.
pub fn with_kind(id: impl Into<ElementId>, open: bool, kind: DialogKind) -> Self查看源码is_openpub const fn is_open(self) -> bool—
kindpub const fn kind(self) -> DialogKind—
initial_focuspub fn initial_focus(mut self, focus: impl Into<ElementId>) -> Self—
Prefer one mounted descendant when this dialog opens. Without an explicit target, the focus trap chooses its first enabled Tab stop and falls back to the popover root when no interactive descendant exists.
pub fn initial_focus(mut self, focus: impl Into<ElementId>) -> Self查看源码restore_focus_topub fn restore_focus_to(mut self, focus: impl Into<ElementId>) -> Self—
Restore focus to one stable control after every dismissal path.
pub fn restore_focus_to(mut self, focus: impl Into<ElementId>) -> Self查看源码dismiss_on_escapepub const fn dismiss_on_escape(mut self, dismiss: bool) -> Self—
Configures dismiss on escape for this part.
pub const fn dismiss_on_escape(mut self, dismiss: bool) -> Self查看源码dismiss_on_backdroppub const fn dismiss_on_backdrop(mut self, dismiss: bool) -> Self—
Configures dismiss on backdrop for this part.
pub const fn dismiss_on_backdrop(mut self, dismiss: bool) -> Self查看源码root_idpub fn root_id(self) -> ElementId—
backdrop_idpub fn backdrop_id(self) -> ElementId—
popover_idpub fn popover_id(self) -> ElementId—
title_idpub fn title_id(self) -> ElementId—
description_idpub fn description_id(self) -> ElementId—
close_idpub fn close_id(self) -> ElementId—
viewport_idpub fn viewport_id(self) -> ElementId—
Stable identity of the scrolling viewport between the backdrop and the popup.
pub fn viewport_id(self) -> ElementId查看源码popover_focuspub fn popover_focus(self) -> FocusHandle—
focus_initialpub fn focus_initial(self, cx: &mut EventContext)—
Request the declared initial focus in the same event that mounts the dialog.
pub fn focus_initial(self, cx: &mut EventContext)查看源码focus_restorepub fn focus_restore(self, cx: &mut EventContext)—
Restore the declared focus after an explicit close action. Escape and backdrop dismissal already use the same retained target automatically.
pub fn focus_restore(self, cx: &mut EventContext)查看源码Dialog::trigger_with
查看源码pub fn trigger_with(self, id: impl Into<ElementId>, trigger: Element) -> ElementDecorate an application-owned trigger without adding appearance.
Dialog::trigger
查看源码pub fn trigger(self, id: impl Into<ElementId>) -> ElementCreate the unstyled trigger part. Use [`Self::trigger_with`] to supply an existing element.
Dialog::root_with
查看源码pub fn root_with(self, root: Element) -> ElementDecorate the full-window portal and active modal focus boundary.
Dialog::root
查看源码pub fn root(self) -> ElementCreate the unstyled root part. Use [`Self::root_with`] to supply an existing element.
Dialog::backdrop_with
查看源码pub fn backdrop_with(self, backdrop: Element) -> ElementDecorate the caller-owned visual backdrop.
Dialog::backdrop
查看源码pub fn backdrop(self) -> ElementCreate the unstyled backdrop part. Use [`Self::backdrop_with`] to supply an existing element.
Dialog::popup_with
查看源码pub fn popup_with(self, popover: Element) -> ElementDecorate the caller-owned modal popover. The popover is a negative-Tab-index focus fallback. Enabled descendant Tab stops are chosen first when the enclosing trap mounts. Title and description relationships project only when the corresponding parts are mounted, so incomplete compositions never emit dangling native node references.
Dialog::popup
查看源码pub fn popup(self) -> ElementCreate the unstyled popup part. Use [`Self::popup_with`] to supply an existing element.
Dialog::viewport_with
查看源码pub fn viewport_with(self, viewport: Element) -> ElementDecorate the caller-owned scrolling viewport the popup sits inside, Base UI's Viewport. A dialog taller than the window must scroll as one surface rather than clipping its own content, and the scroll must live outside the popup so the popup keeps its own padding and shadow. QuickGUI supplies the stable identity and the scroll container; size, alignment, and padding stay application-owned.
Dialog::viewport
查看源码pub fn viewport(self) -> ElementCreate the unstyled viewport part. Use [`Self::viewport_with`] to supply an existing element.
Dialog::title_with
查看源码pub fn title_with(self, title: Element) -> ElementAssign the stable visible label target used by the popover.
Dialog::title
查看源码pub fn title(self) -> ElementCreate the unstyled title part. Use [`Self::title_with`] to supply an existing element.
Dialog::description_with
查看源码pub fn description_with(self, description: Element) -> ElementAssign the stable visible description target used by the popover.
Dialog::description
查看源码pub fn description(self) -> ElementCreate the unstyled description part. Use [`Self::description_with`] to supply an existing element.
Dialog::close_with
查看源码pub fn close_with(self, label: impl Into<std::sync::Arc<str>>, close: Element) -> ElementDecorate a caller-owned close control with button behavior and no visual defaults.
Dialog::close
查看源码pub fn close(self, label: impl Into<std::sync::Arc<str>>) -> ElementCreate the unstyled close part. Use [`Self::close_with`] to supply an existing element.
