class Adw::AlertDialog
Overview
A dialog presenting a message or a question.

Alert dialogs have a heading, a body, an optional child widget, and one or multiple responses, each presented as a button.
Each response has a unique string ID, and a button label. Additionally, each response can be enabled or disabled, and can have a suggested or destructive appearance.
When one of the responses is activated, or the dialog is closed, the
AlertDialog::#response
signal will be emitted. This signal is
detailed, and the detail, as well as the response
parameter will be set to
the ID of the activated response, or to the value of the
[property@AlertDialog:close-response] property if the dialog had been closed
without activating any of the responses.
Response buttons can be presented horizontally or vertically depending on available space.
When a response is activated, Adw::AlertDialog
is closed automatically.
An example of using an alert dialog:
WARNING ⚠️ The following code is in c ⚠️
Adw::Dialog *dialog;
dialog = adw_alert_dialog_new (_("Replace File?"), NULL);
adw_alert_dialog_format_body (ADW_ALERT_DIALOG (dialog),
_("A file named “%s” already exists. Do you want to replace it?"),
filename);
adw_alert_dialog_add_responses (ADW_ALERT_DIALOG (dialog),
"cancel", _("_Cancel"),
"replace", _("_Replace"),
NULL);
adw_alert_dialog_set_response_appearance (ADW_ALERT_DIALOG (dialog),
"replace",
ADW_RESPONSE_DESTRUCTIVE);
adw_alert_dialog_set_default_response (ADW_ALERT_DIALOG (dialog), "cancel");
adw_alert_dialog_set_close_response (ADW_ALERT_DIALOG (dialog), "cancel");
g_signal_connect (dialog, "response", G_CALLBACK (response_cb), self);
adw_dialog_present (dialog, parent);
Async API
Adw::AlertDialog
can also be used via the AlertDialog::choose
method.
This API follows the GIO async pattern, for example:
WARNING ⚠️ The following code is in c ⚠️
static void
dialog_cb (Adw::AlertDialog *dialog,
GAsyncResult *result,
MyWindow *self)
{
const char *response = adw_alert_dialog_choose_finish (dialog, result);
// ...
}
static void
show_dialog (MyWindow *self)
{
Adw::Dialog *dialog;
dialog = adw_alert_dialog_new (_("Replace File?"), NULL);
adw_alert_dialog_format_body (ADW_ALERT_DIALOG (dialog),
_("A file named “%s” already exists. Do you want to replace it?"),
filename);
adw_alert_dialog_add_responses (ADW_ALERT_DIALOG (dialog),
"cancel", _("_Cancel"),
"replace", _("_Replace"),
NULL);
adw_alert_dialog_set_response_appearance (ADW_ALERT_DIALOG (dialog),
"replace",
ADW_RESPONSE_DESTRUCTIVE);
adw_alert_dialog_set_default_response (ADW_ALERT_DIALOG (dialog), "cancel");
adw_alert_dialog_set_close_response (ADW_ALERT_DIALOG (dialog), "cancel");
adw_alert_dialog_choose (ADW_ALERT_DIALOG (dialog), GTK_WIDGET (self),
NULL, (GAsyncReadyCallback) dialog_cb, self);
}
Adw::AlertDialog as Gtk::Buildable
Adw::AlertDialog
supports adding responses in UI definitions by via the
<responses>
element that may contain multiple <response>
elements, each
representing a response.
Each of the <response>
elements must have the id
attribute specifying the
response ID. The contents of the element are used as the response label.
Response labels can be translated with the usual translatable
, context
and comments
attributes.
The <response>
elements can also have enabled
and/or appearance
attributes. See AlertDialog#response_enabled=
and
AlertDialog#response_appearance=
for details.
Example of an Adw::AlertDialog
UI definition:
WARNING ⚠️ The following code is in xml ⚠️
<object class="Adw::AlertDialog" id="dialog">
<property name="heading" translatable="yes">Save Changes?</property>
<property name="body" translatable="yes">Open documents contain unsaved changes. Changes which are not saved will be permanently lost.</property>
<property name="default-response">save</property>
<property name="close-response">cancel</property>
<signal name="response" handler="response_cb"/>
<responses>
<response id="cancel" translatable="yes">_Cancel</response>
<response id="discard" translatable="yes" appearance="destructive">_Discard</response>
<response id="save" translatable="yes" appearance="suggested" enabled="false">_Save</response>
</responses>
</object>
Included Modules
Defined in:
lib/gi-crystal/src/auto/adw-1/alert_dialog.crConstructors
-
.new(heading : String | Nil, body : String | Nil) : self
Creates a new
Adw::AlertDialog
. -
.new
Initialize a new
AlertDialog
. - .new(*, accessible_role : Gtk::AccessibleRole | Nil = nil, body : String | Nil = nil, body_use_markup : Bool | Nil = nil, can_close : Bool | Nil = nil, can_focus : Bool | Nil = nil, can_target : Bool | Nil = nil, child : Gtk::Widget | Nil = nil, close_response : String | Nil = nil, content_height : Int32 | Nil = nil, content_width : Int32 | Nil = nil, css_classes : Enumerable(String) | Nil = nil, css_name : String | Nil = nil, current_breakpoint : Adw::Breakpoint | Nil = nil, cursor : Gdk::Cursor | Nil = nil, default_response : String | Nil = nil, default_widget : Gtk::Widget | Nil = nil, extra_child : Gtk::Widget | Nil = nil, focus_on_click : Bool | Nil = nil, focus_widget : Gtk::Widget | Nil = nil, focusable : Bool | Nil = nil, follows_content_size : Bool | Nil = nil, halign : Gtk::Align | Nil = nil, has_default : Bool | Nil = nil, has_focus : Bool | Nil = nil, has_tooltip : Bool | Nil = nil, heading : String | Nil = nil, heading_use_markup : Bool | Nil = nil, height_request : Int32 | Nil = nil, hexpand : Bool | Nil = nil, hexpand_set : Bool | Nil = nil, layout_manager : Gtk::LayoutManager | Nil = nil, limit_events : Bool | Nil = nil, margin_bottom : Int32 | Nil = nil, margin_end : Int32 | Nil = nil, margin_start : Int32 | Nil = nil, margin_top : Int32 | Nil = nil, name : String | Nil = nil, opacity : Float64 | Nil = nil, overflow : Gtk::Overflow | Nil = nil, parent : Gtk::Widget | Nil = nil, prefer_wide_layout : Bool | Nil = nil, presentation_mode : Adw::DialogPresentationMode | Nil = nil, receives_default : Bool | Nil = nil, root : Gtk::Root | Nil = nil, scale_factor : Int32 | Nil = nil, sensitive : Bool | Nil = nil, title : String | Nil = nil, tooltip_markup : String | Nil = nil, tooltip_text : String | Nil = nil, valign : Gtk::Align | Nil = nil, vexpand : Bool | Nil = nil, vexpand_set : Bool | Nil = nil, visible : Bool | Nil = nil, width_request : Int32 | Nil = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. -
#add_response(id : String, label : String) : Nil
Adds a response with id and label to self.
-
#body : String
Gets the body text of self.
-
#body=(body : String) : Nil
Sets the body text of self.
-
#body=(value : Nil) : Nil
Set
#body
property to nil. -
#body? : String | Nil
Same as
#body
, but can return nil. -
#body_use_markup : Bool
Gets whether the body text of self includes Pango markup.
-
#body_use_markup=(use_markup : Bool) : Nil
Sets whether the body text of self includes Pango markup.
- #body_use_markup? : Bool
-
#choose(parent : Gtk::Widget | Nil, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
This function shows self to the user.
-
#choose_finish(result : Gio::AsyncResult) : String
Finishes the
AlertDialog::choose
call and returns the response ID. -
#close_response : String
Gets the ID of the close response of self.
-
#close_response=(response : String) : Nil
Sets the ID of the close response of self.
-
#close_response=(value : Nil) : Nil
Set
#close_response
property to nil. -
#close_response? : String | Nil
Same as
#close_response
, but can return nil. -
#default_response : String | Nil
Gets the ID of the default response of self.
- #default_response=(value : String) : String
-
#default_response=(value : Nil) : Nil
Set
#default_response
property to nil. -
#default_response=(response : String | Nil) : Nil
Sets the ID of the default response of self.
-
#default_response? : String | Nil
Same as
#default_response
, but can return nil. -
#extra_child : Gtk::Widget | Nil
Gets the child widget of self.
-
#extra_child=(child : Gtk::Widget | Nil) : Nil
Sets the child widget of self.
-
#has_response(response : String) : Bool
Gets whether self has a response with the ID response.
-
#hash(hasher)
See
Object#hash(hasher)
-
#heading : String | Nil
Gets the heading of self.
- #heading=(value : String) : String
-
#heading=(value : Nil) : Nil
Set
#heading
property to nil. -
#heading=(heading : String | Nil) : Nil
Sets the heading of self.
-
#heading? : String | Nil
Same as
#heading
, but can return nil. -
#heading_use_markup : Bool
Gets whether the heading of self includes Pango markup.
-
#heading_use_markup=(use_markup : Bool) : Nil
Sets whether the heading of self includes Pango markup.
- #heading_use_markup? : Bool
-
#prefer_wide_layout : Bool
Gets whether self prefers wide layout.
-
#prefer_wide_layout=(prefer_wide_layout : Bool) : Nil
Sets whether self prefers wide layout.
- #prefer_wide_layout? : Bool
-
#remove_response(id : String) : Nil
Removes a response from self.
-
#response_appearance(response : String) : Adw::ResponseAppearance
Gets the appearance of response.
-
#response_enabled(response : String) : Bool
Gets whether response is enabled.
-
#response_label(response : String) : String
Gets the label of response.
- #response_signal
-
#set_response_appearance(response : String, appearance : Adw::ResponseAppearance) : Nil
Sets the appearance for response.
-
#set_response_enabled(response : String, enabled : Bool) : Nil
Sets whether response is enabled.
-
#set_response_label(response : String, label : String) : Nil
Sets the label of response to label.
Instance methods inherited from module Gtk::ShortcutManager
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ShortcutManager
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ShortcutManager
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::ConstraintTarget
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ConstraintTarget
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ConstraintTarget
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Buildable
buildable_id : String | Nil
buildable_id,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Buildable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Buildable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Accessible
accessible_parent : Gtk::Accessible | Nil
accessible_parent,
accessible_role : Gtk::AccessibleRole
accessible_role,
accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole
accessible_role=,
announce(message : String, priority : Gtk::AccessibleAnnouncementPriority) : Nil
announce,
at_context : Gtk::ATContext
at_context,
bounds(x : Int32, y : Int32, width : Int32, height : Int32) : Bool
bounds,
first_accessible_child : Gtk::Accessible | Nil
first_accessible_child,
next_accessible_sibling : Gtk::Accessible | Nil
next_accessible_sibling,
platform_state(state : Gtk::AccessiblePlatformState) : Bool
platform_state,
reset_property(property : Gtk::AccessibleProperty) : Nil
reset_property,
reset_relation(relation : Gtk::AccessibleRelation) : Nil
reset_relation,
reset_state(state : Gtk::AccessibleState) : Nil
reset_state,
set_accessible_parent(parent : Gtk::Accessible | Nil, next_sibling : Gtk::Accessible | Nil) : Nil
set_accessible_parent,
to_unsafe
to_unsafe,
update_next_accessible_sibling(new_sibling : Gtk::Accessible | Nil) : Nil
update_next_accessible_sibling,
update_platform_state(state : Gtk::AccessiblePlatformState) : Nil
update_platform_state,
update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil
update_property,
update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil
update_relation,
update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil
update_state
Constructor methods inherited from module Gtk::Accessible
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Accessible
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class Adw::Dialog
==(other : self)
==,
add_breakpoint(breakpoint : Adw::Breakpoint) : Nil
add_breakpoint,
can_close : Bool
can_close,
can_close=(can_close : Bool) : Nil
can_close=,
can_close? : Bool
can_close?,
child : Gtk::Widget | Nil
child,
child=(child : Gtk::Widget | Nil) : Nil
child=,
close : Bool
close,
close_attempt_signal
close_attempt_signal,
closed_signal
closed_signal,
content_height : Int32
content_height,
content_height=(content_height : Int32) : Nil
content_height=,
content_width : Int32
content_width,
content_width=(content_width : Int32) : Nil
content_width=,
current_breakpoint : Adw::Breakpoint | Nil
current_breakpoint,
default_widget : Gtk::Widget | Nil
default_widget,
default_widget=(default_widget : Gtk::Widget | Nil) : Nil
default_widget=,
focus : Gtk::Widget | Nil
focus,
focus=(focus : Gtk::Widget | Nil) : Nil
focus=,
focus_widget : Gtk::Widget | Nil
focus_widget,
focus_widget=(value : Gtk::Widget | Nil) : Gtk::Widget | Nil
focus_widget=,
follows_content_size : Bool
follows_content_size,
follows_content_size=(follows_content_size : Bool) : Nil
follows_content_size=,
follows_content_size? : Bool
follows_content_size?,
force_close : Nil
force_close,
hash(hasher)
hash,
present(parent : Gtk::Widget | Nil) : Nil
present,
presentation_mode : Adw::DialogPresentationMode
presentation_mode,
presentation_mode=(presentation_mode : Adw::DialogPresentationMode) : Nil
presentation_mode=,
title : String
title,
title=(title : String) : Niltitle=(value : Nil) : Nil title=, title? : String | Nil title?
Constructor methods inherited from class Adw::Dialog
new : selfnew(*, accessible_role : Gtk::AccessibleRole | Nil = nil, can_close : Bool | Nil = nil, can_focus : Bool | Nil = nil, can_target : Bool | Nil = nil, child : Gtk::Widget | Nil = nil, content_height : Int32 | Nil = nil, content_width : Int32 | Nil = nil, css_classes : Enumerable(String) | Nil = nil, css_name : String | Nil = nil, current_breakpoint : Adw::Breakpoint | Nil = nil, cursor : Gdk::Cursor | Nil = nil, default_widget : Gtk::Widget | Nil = nil, focus_on_click : Bool | Nil = nil, focus_widget : Gtk::Widget | Nil = nil, focusable : Bool | Nil = nil, follows_content_size : Bool | Nil = nil, halign : Gtk::Align | Nil = nil, has_default : Bool | Nil = nil, has_focus : Bool | Nil = nil, has_tooltip : Bool | Nil = nil, height_request : Int32 | Nil = nil, hexpand : Bool | Nil = nil, hexpand_set : Bool | Nil = nil, layout_manager : Gtk::LayoutManager | Nil = nil, limit_events : Bool | Nil = nil, margin_bottom : Int32 | Nil = nil, margin_end : Int32 | Nil = nil, margin_start : Int32 | Nil = nil, margin_top : Int32 | Nil = nil, name : String | Nil = nil, opacity : Float64 | Nil = nil, overflow : Gtk::Overflow | Nil = nil, parent : Gtk::Widget | Nil = nil, presentation_mode : Adw::DialogPresentationMode | Nil = nil, receives_default : Bool | Nil = nil, root : Gtk::Root | Nil = nil, scale_factor : Int32 | Nil = nil, sensitive : Bool | Nil = nil, title : String | Nil = nil, tooltip_markup : String | Nil = nil, tooltip_text : String | Nil = nil, valign : Gtk::Align | Nil = nil, vexpand : Bool | Nil = nil, vexpand_set : Bool | Nil = nil, visible : Bool | Nil = nil, width_request : Int32 | Nil = nil) new
Class methods inherited from class Adw::Dialog
g_type : UInt64
g_type
Instance methods inherited from module Gtk::ShortcutManager
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ShortcutManager
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ShortcutManager
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::ConstraintTarget
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ConstraintTarget
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ConstraintTarget
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Buildable
buildable_id : String | Nil
buildable_id,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Buildable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Buildable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Accessible
accessible_parent : Gtk::Accessible | Nil
accessible_parent,
accessible_role : Gtk::AccessibleRole
accessible_role,
accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole
accessible_role=,
announce(message : String, priority : Gtk::AccessibleAnnouncementPriority) : Nil
announce,
at_context : Gtk::ATContext
at_context,
bounds(x : Int32, y : Int32, width : Int32, height : Int32) : Bool
bounds,
first_accessible_child : Gtk::Accessible | Nil
first_accessible_child,
next_accessible_sibling : Gtk::Accessible | Nil
next_accessible_sibling,
platform_state(state : Gtk::AccessiblePlatformState) : Bool
platform_state,
reset_property(property : Gtk::AccessibleProperty) : Nil
reset_property,
reset_relation(relation : Gtk::AccessibleRelation) : Nil
reset_relation,
reset_state(state : Gtk::AccessibleState) : Nil
reset_state,
set_accessible_parent(parent : Gtk::Accessible | Nil, next_sibling : Gtk::Accessible | Nil) : Nil
set_accessible_parent,
to_unsafe
to_unsafe,
update_next_accessible_sibling(new_sibling : Gtk::Accessible | Nil) : Nil
update_next_accessible_sibling,
update_platform_state(state : Gtk::AccessiblePlatformState) : Nil
update_platform_state,
update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil
update_property,
update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil
update_relation,
update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil
update_state
Constructor methods inherited from module Gtk::Accessible
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Accessible
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class Gtk::Widget
==(other : self)
==,
action_set_enabled(action_name : String, enabled : Bool) : Nil
action_set_enabled,
activate : Bool
activate,
activate_action(name : String, args : _ | Nil) : Bool
activate_action,
activate_default : Nil
activate_default,
add_controller(controller : Gtk::EventController) : Nil
add_controller,
add_css_class(css_class : String) : Nil
add_css_class,
add_mnemonic_label(label : Gtk::Widget) : Nil
add_mnemonic_label,
add_tick_callback(callback : Gtk::TickCallback) : UInt32
add_tick_callback,
allocate(width : Int32, height : Int32, baseline : Int32, transform : Gsk::Transform | Nil) : Nil
allocate,
allocated_baseline : Int32
allocated_baseline,
allocated_height : Int32
allocated_height,
allocated_width : Int32
allocated_width,
allocation : Gdk::Rectangle
allocation,
ancestor(widget_type : UInt64) : Gtk::Widget | Nil
ancestor,
baseline : Int32
baseline,
can_focus : Bool
can_focus,
can_focus=(can_focus : Bool) : Nil
can_focus=,
can_focus? : Bool
can_focus?,
can_target : Bool
can_target,
can_target=(can_target : Bool) : Nil
can_target=,
can_target? : Bool
can_target?,
child_focus(direction : Gtk::DirectionType) : Bool
child_focus,
child_visible : Bool
child_visible,
child_visible=(child_visible : Bool) : Nil
child_visible=,
clipboard : Gdk::Clipboard
clipboard,
color : Gdk::RGBA
color,
compute_bounds(target : Gtk::Widget) : Graphene::Rect
compute_bounds,
compute_expand(orientation : Gtk::Orientation) : Bool
compute_expand,
compute_point(target : Gtk::Widget, point : Graphene::Point) : Graphene::Point
compute_point,
compute_transform(target : Gtk::Widget) : Graphene::Matrix
compute_transform,
contains(x : Float64, y : Float64) : Bool
contains,
create_pango_context : Pango::Context
create_pango_context,
create_pango_layout(text : String | Nil) : Pango::Layout
create_pango_layout,
css_classes : Enumerable(String)
css_classes,
css_classes=(classes : Enumerable(String)) : Nil
css_classes=,
css_name : String
css_name,
css_name=(value : String) : Stringcss_name=(value : Nil) : Nil css_name=, css_name? : String | Nil css_name?, cursor : Gdk::Cursor | Nil cursor, cursor=(cursor : Gdk::Cursor | Nil) : Nil cursor=, cursor_from_name=(name : String | Nil) : Nil cursor_from_name=, destroy_signal destroy_signal, direction : Gtk::TextDirection direction, direction=(dir : Gtk::TextDirection) : Nil direction=, direction_changed_signal direction_changed_signal, display : Gdk::Display display, dispose_template(widget_type : UInt64) : Nil dispose_template, drag_check_threshold(start_x : Int32, start_y : Int32, current_x : Int32, current_y : Int32) : Bool drag_check_threshold, error_bell : Nil error_bell, first_child : Gtk::Widget | Nil first_child, focus_child : Gtk::Widget | Nil focus_child, focus_child=(child : Gtk::Widget | Nil) : Nil focus_child=, focus_on_click : Bool focus_on_click, focus_on_click=(focus_on_click : Bool) : Nil focus_on_click=, focus_on_click? : Bool focus_on_click?, focusable : Bool focusable, focusable=(focusable : Bool) : Nil focusable=, focusable? : Bool focusable?, font_map : Pango::FontMap | Nil font_map, font_map=(font_map : Pango::FontMap | Nil) : Nil font_map=, font_options : Cairo::FontOptions | Nil font_options, font_options=(options : Cairo::FontOptions | Nil) : Nil font_options=, frame_clock : Gdk::FrameClock | Nil frame_clock, grab_focus : Bool grab_focus, halign : Gtk::Align halign, halign=(align : Gtk::Align) : Nil halign=, has_css_class(css_class : String) : Bool has_css_class, has_default : Bool has_default, has_default? : Bool has_default?, has_focus : Bool has_focus, has_focus? : Bool has_focus?, has_tooltip : Bool has_tooltip, has_tooltip=(has_tooltip : Bool) : Nil has_tooltip=, has_tooltip? : Bool has_tooltip?, has_visible_focus : Bool has_visible_focus, hash(hasher) hash, height : Int32 height, height_request : Int32 height_request, height_request=(value : Int32) : Int32 height_request=, hexpand : Bool hexpand, hexpand=(expand : Bool) : Nil hexpand=, hexpand? : Bool hexpand?, hexpand_set : Bool hexpand_set, hexpand_set=(set : Bool) : Nil hexpand_set=, hexpand_set? : Bool hexpand_set?, hide : Nil hide, hide_signal hide_signal, in_destruction : Bool in_destruction, init_template : Nil init_template, insert_action_group(name : String, group : Gio::ActionGroup | Nil) : Nil insert_action_group, insert_after(parent : Gtk::Widget, previous_sibling : Gtk::Widget | Nil) : Nil insert_after, insert_before(parent : Gtk::Widget, next_sibling : Gtk::Widget | Nil) : Nil insert_before, is_ancestor(ancestor : Gtk::Widget) : Bool is_ancestor, is_drawable : Bool is_drawable, is_focus : Bool is_focus, is_sensitive? : Bool is_sensitive?, is_visible? : Bool is_visible?, keynav_failed(direction : Gtk::DirectionType) : Bool keynav_failed, keynav_failed_signal keynav_failed_signal, last_child : Gtk::Widget | Nil last_child, layout_manager : Gtk::LayoutManager | Nil layout_manager, layout_manager=(layout_manager : Gtk::LayoutManager | Nil) : Nil layout_manager=, limit_events : Bool limit_events, limit_events=(limit_events : Bool) : Nil limit_events=, limit_events? : Bool limit_events?, list_mnemonic_labels : GLib::List list_mnemonic_labels, map : Nil map, map_signal map_signal, mapped : Bool mapped, margin_bottom : Int32 margin_bottom, margin_bottom=(margin : Int32) : Nil margin_bottom=, margin_end : Int32 margin_end, margin_end=(margin : Int32) : Nil margin_end=, margin_start : Int32 margin_start, margin_start=(margin : Int32) : Nil margin_start=, margin_top : Int32 margin_top, margin_top=(margin : Int32) : Nil margin_top=, measure(orientation : Gtk::Orientation, for_size : Int32) : Nil measure, mnemonic_activate(group_cycling : Bool) : Bool mnemonic_activate, mnemonic_activate_signal mnemonic_activate_signal, move_focus_signal move_focus_signal, name : String name, name=(name : String) : Nil
name=(value : Nil) : Nil name=, name? : String | Nil name?, native : Gtk::Native | Nil native, next_sibling : Gtk::Widget | Nil next_sibling, observe_children : Gio::ListModel observe_children, observe_controllers : Gio::ListModel observe_controllers, opacity : Float64 opacity, opacity=(opacity : Float64) : Nil opacity=, overflow : Gtk::Overflow overflow, overflow=(overflow : Gtk::Overflow) : Nil overflow=, pango_context : Pango::Context pango_context, parent : Gtk::Widget | Nil parent, parent=(parent : Gtk::Widget) : Nil parent=, pick(x : Float64, y : Float64, flags : Gtk::PickFlags) : Gtk::Widget | Nil pick, preferred_size : Gtk::Requisition preferred_size, prev_sibling : Gtk::Widget | Nil prev_sibling, primary_clipboard : Gdk::Clipboard primary_clipboard, query_tooltip_signal query_tooltip_signal, queue_allocate : Nil queue_allocate, queue_draw : Nil queue_draw, queue_resize : Nil queue_resize, realize : Nil realize, realize_signal realize_signal, realized : Bool realized, receives_default : Bool receives_default, receives_default=(receives_default : Bool) : Nil receives_default=, receives_default? : Bool receives_default?, remove_controller(controller : Gtk::EventController) : Nil remove_controller, remove_css_class(css_class : String) : Nil remove_css_class, remove_mnemonic_label(label : Gtk::Widget) : Nil remove_mnemonic_label, remove_tick_callback(id : UInt32) : Nil remove_tick_callback, request_mode : Gtk::SizeRequestMode request_mode, root : Gtk::Root | Nil root, scale_factor : Int32 scale_factor, sensitive : Bool sensitive, sensitive=(sensitive : Bool) : Nil sensitive=, sensitive? : Bool sensitive?, set_size_request(width : Int32, height : Int32) : Nil set_size_request, set_state_flags(flags : Gtk::StateFlags, clear : Bool) : Nil set_state_flags, settings : Gtk::Settings settings, should_layout : Bool should_layout, show : Nil show, show_signal show_signal, size(orientation : Gtk::Orientation) : Int32 size, size_allocate(allocation : Gdk::Rectangle, baseline : Int32) : Nil size_allocate, size_request : Nil size_request, snapshot_child(child : Gtk::Widget, snapshot : Gtk::Snapshot) : Nil snapshot_child, state_flags : Gtk::StateFlags state_flags, state_flags_changed_signal state_flags_changed_signal, style_context : Gtk::StyleContext style_context, tooltip_markup : String | Nil tooltip_markup, tooltip_markup=(value : String) : String
tooltip_markup=(value : Nil) : Nil
tooltip_markup=(markup : String | Nil) : Nil tooltip_markup=, tooltip_markup? : String | Nil tooltip_markup?, tooltip_text : String | Nil tooltip_text, tooltip_text=(value : String) : String
tooltip_text=(value : Nil) : Nil
tooltip_text=(text : String | Nil) : Nil tooltip_text=, tooltip_text? : String | Nil tooltip_text?, translate_coordinates(dest_widget : Gtk::Widget, src_x : Float64, src_y : Float64) : Bool translate_coordinates, trigger_tooltip_query : Nil trigger_tooltip_query, unmap : Nil unmap, unmap_signal unmap_signal, unparent : Nil unparent, unrealize : Nil unrealize, unrealize_signal unrealize_signal, unset_state_flags(flags : Gtk::StateFlags) : Nil unset_state_flags, valign : Gtk::Align valign, valign=(align : Gtk::Align) : Nil valign=, vexpand : Bool vexpand, vexpand=(expand : Bool) : Nil vexpand=, vexpand? : Bool vexpand?, vexpand_set : Bool vexpand_set, vexpand_set=(set : Bool) : Nil vexpand_set=, vexpand_set? : Bool vexpand_set?, visible : Bool visible, visible=(visible : Bool) : Nil visible=, visible? : Bool visible?, width : Int32 width, width_request : Int32 width_request, width_request=(value : Int32) : Int32 width_request=
Constructor methods inherited from class Gtk::Widget
newnew(*, accessible_role : Gtk::AccessibleRole | Nil = nil, can_focus : Bool | Nil = nil, can_target : Bool | Nil = nil, css_classes : Enumerable(String) | Nil = nil, css_name : String | Nil = nil, cursor : Gdk::Cursor | Nil = nil, focus_on_click : Bool | Nil = nil, focusable : Bool | Nil = nil, halign : Gtk::Align | Nil = nil, has_default : Bool | Nil = nil, has_focus : Bool | Nil = nil, has_tooltip : Bool | Nil = nil, height_request : Int32 | Nil = nil, hexpand : Bool | Nil = nil, hexpand_set : Bool | Nil = nil, layout_manager : Gtk::LayoutManager | Nil = nil, limit_events : Bool | Nil = nil, margin_bottom : Int32 | Nil = nil, margin_end : Int32 | Nil = nil, margin_start : Int32 | Nil = nil, margin_top : Int32 | Nil = nil, name : String | Nil = nil, opacity : Float64 | Nil = nil, overflow : Gtk::Overflow | Nil = nil, parent : Gtk::Widget | Nil = nil, receives_default : Bool | Nil = nil, root : Gtk::Root | Nil = nil, scale_factor : Int32 | Nil = nil, sensitive : Bool | Nil = nil, tooltip_markup : String | Nil = nil, tooltip_text : String | Nil = nil, valign : Gtk::Align | Nil = nil, vexpand : Bool | Nil = nil, vexpand_set : Bool | Nil = nil, visible : Bool | Nil = nil, width_request : Int32 | Nil = nil) new
Class methods inherited from class Gtk::Widget
default_direction : Gtk::TextDirection
default_direction,
default_direction=(dir : Gtk::TextDirection) : Nil
default_direction=,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::ConstraintTarget
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ConstraintTarget
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ConstraintTarget
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Buildable
buildable_id : String | Nil
buildable_id,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Buildable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Buildable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Accessible
accessible_parent : Gtk::Accessible | Nil
accessible_parent,
accessible_role : Gtk::AccessibleRole
accessible_role,
accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole
accessible_role=,
announce(message : String, priority : Gtk::AccessibleAnnouncementPriority) : Nil
announce,
at_context : Gtk::ATContext
at_context,
bounds(x : Int32, y : Int32, width : Int32, height : Int32) : Bool
bounds,
first_accessible_child : Gtk::Accessible | Nil
first_accessible_child,
next_accessible_sibling : Gtk::Accessible | Nil
next_accessible_sibling,
platform_state(state : Gtk::AccessiblePlatformState) : Bool
platform_state,
reset_property(property : Gtk::AccessibleProperty) : Nil
reset_property,
reset_relation(relation : Gtk::AccessibleRelation) : Nil
reset_relation,
reset_state(state : Gtk::AccessibleState) : Nil
reset_state,
set_accessible_parent(parent : Gtk::Accessible | Nil, next_sibling : Gtk::Accessible | Nil) : Nil
set_accessible_parent,
to_unsafe
to_unsafe,
update_next_accessible_sibling(new_sibling : Gtk::Accessible | Nil) : Nil
update_next_accessible_sibling,
update_platform_state(state : Gtk::AccessiblePlatformState) : Nil
update_platform_state,
update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil
update_property,
update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil
update_relation,
update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil
update_state
Constructor methods inherited from module Gtk::Accessible
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Accessible
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class GObject::InitiallyUnowned
==(other : self)
==,
hash(hasher)
hash
Constructor methods inherited from class GObject::InitiallyUnowned
new
new
Class methods inherited from class GObject::InitiallyUnowned
g_type : UInt64
g_type
Instance methods inherited from class GObject::Object
==(other : self)
==,
bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding
bind_property,
bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding
bind_property_full,
data(key : String) : Pointer(Void) | Nil
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
hash(hasher)
hash,
notify(property_name : String) : Nil
notify,
notify_by_pspec(pspec : GObject::ParamSpec) : Nil
notify_by_pspec,
notify_signal
notify_signal,
property(property_name : String, value : _) : Nil
property,
qdata(quark : UInt32) : Pointer(Void) | Nil
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void) | Nil) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void) | Nil
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void) | Nil
steal_qdata,
thaw_notify : Nil
thaw_notify,
to_unsafe : Pointer(Void)
to_unsafe,
watch_closure(closure : GObject::Closure) : Nil
watch_closure
Constructor methods inherited from class GObject::Object
cast(obj : GObject::Object) : self
cast,
new(pointer : Pointer(Void), transfer : GICrystal::Transfer)new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv
Class methods inherited from class GObject::Object
cast?(obj : GObject::Object) : self | Nil
cast?,
compat_control(what : UInt64, data : Pointer(Void) | Nil) : UInt64
compat_control,
g_type : UInt64
g_type,
interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec
interface_find_property,
interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec)
interface_list_properties
Macros inherited from class GObject::Object
previous_vfunc(*args)
previous_vfunc,
previous_vfunc!(*args)
previous_vfunc!,
signal(signature)
signal
Constructor Detail
Creates a new Adw::AlertDialog
.
heading and body can be set to NULL
. This can be useful if they need to
be formatted or use markup. In that case, set them to NULL
and call
AlertDialog::format_body
or similar methods afterwards:
WARNING ⚠️ The following code is in c ⚠️
Adw::Dialog *dialog;
dialog = adw_alert_dialog_new (_("Replace File?"), NULL);
adw_alert_dialog_format_body (ADW_ALERT_DIALOG (dialog),
_("A file named “%s” already exists. Do you want to replace it?"),
filename);
Class Method Detail
Instance Method Detail
Returns true
if this reference is the same as other. Invokes same?
.
Adds a response with id and label to self.
Responses are represented as buttons in the dialog.
Response ID must be unique. It will be used in AlertDialog::#response
to tell which response had been activated, as well as to inspect and modify
the response later.
An embedded underline in label indicates a mnemonic.
AlertDialog#response_label=
can be used to change the response
label after it had been added.
AlertDialog#response_enabled=
and
AlertDialog#response_appearance=
can be used to customize the
responses further.
This function shows self to the user.
If the window is an #Window
or #ApplicationWindow
, the dialog
will be shown within it. Otherwise, it will be a separate window.
Sets the ID of the close response of self.
It will be passed to AlertDialog::#response
if the dialog is closed
by pressing Escape or with a system action.
It doesn't have to correspond to any of the responses in the dialog.
The default close response is close
.
Sets the ID of the default response of self.
If set, pressing Enter will activate the corresponding button.
If set to NULL
or to a non-existent response ID, pressing Enter
will do nothing.
Sets the child widget of self.
The child widget is displayed below the heading and body.
Sets whether self prefers wide layout.
Prefer horizontal button layout when possible, and wider dialog width otherwise.
Gets the appearance of response.
See AlertDialog#response_appearance=
.
Gets whether response is enabled.
See AlertDialog#response_enabled=
.
Gets the label of response.
See AlertDialog#response_label=
.
Sets the appearance for response.

Use ADW_RESPONSE_SUGGESTED
to mark important responses such as the
affirmative action, like the Save button in the example.
Use ADW_RESPONSE_DESTRUCTIVE
to draw attention to the potentially damaging
consequences of using response. This appearance acts as a warning to the
user. The Discard button in the example is using this appearance.
The default appearance is ADW_RESPONSE_DEFAULT
.
Negative responses like Cancel or Close should use the default appearance.
Sets whether response is enabled.
If response is not enabled, the corresponding button will have
Gtk::Widget#sensitive
set to FALSE
and it can't be activated as
a default response.
response can still be used as [property@AlertDialog:close-response] while
it's not enabled.
Responses are enabled by default.