KitDialogFooter
Trailing slot for dialog actions.

Place buttons in reading order and connect their actions to the dialog controller. Use busy or disabled on actions during an operation.
The row aligns to the end with 8 px spacing and a 48 px minimum height. The footer does not automatically close the modal.
Complete example
This complete Slint file is a visual composition used to produce the screenshot above. Internal strings without a label property retain the kit’s default language; system dialogs follow the host platform. Projected state and callbacks requesting a decision need host wiring; the standalone fixture does not supply that controller. Set up the Rust project, then see the typed controller application for working editing, validation and selection.
// SPDX-License-Identifier: GPL-3.0-or-later
import { KitButton, KitDialogFooter, KitTheme, KitThemes } from "@kit/kit.slint";
export component Example inherits Window {
title: "KitDialogFooter example";
preferred-width: 420px;
preferred-height: 160px;
max-width: 100000px;
max-height: 100000px;
background: root.theme.canvas;
in-out property <KitTheme> theme: KitThemes.light;
in-out property <string> status;
VerticalLayout {
padding: 24px; spacing: 16px; alignment: start;
Text { text: "Dialog Footer"; color: root.theme.text-primary; font-size: 20px * root.theme.text-scale; font-weight: 600; }
KitDialogFooter { theme: root.theme; vertical-stretch: 0; KitButton { theme: root.theme; text: "Cancel"; activated => { root.status = "Action requested"; } }KitButton { theme: root.theme; text: "Save changes"; activated => { root.status = "Action requested"; } } }
if root.status != "": Text { text: root.status; color: root.theme.text-secondary; font-size: 12px * root.theme.text-scale; wrap: word-wrap; }
}
}
Public API
Inherits Rectangle.
The declarations below come from the component source. Parent properties remain available; see the controller guide for state management.
Properties
| Name | Type | Direction |
|---|---|---|
theme |
KitTheme |
in |