Basics

Guides

API Reference

Menu

Basics

Guides

API Reference

class: DialogCloseCallback

[395:7] extends: object

Generated low-level callback wrapper for GIR callback close.

Members

  • callbackObj
  • userFn
  • userData
  • hasUserData

Methods

  • DialogCloseCallback (callback Fn, UserData = null)

    Creates one native callback wrapper. The wrapper owns a trampoline that converts native pointers into generated wrapper objects before invoking Fn.

    • @p Fn is the Aussom callback implementation.
    • @p UserData is retained and passed through to Fn on each invocation when provided.
  • trampoline (nativeSelf, nativeUserData)

    Internal trampoline. Converts native pointer arguments into generated wrapper instances, then invokes the user's callback.

  • callback ()

    Returns the wrapped NativeCallback.

  • handle ()

    Returns the callback as a NativeHandle.

  • close ()

    Closes the underlying NativeCallback.

  • isClosed ()

    Returns true when the callback has been closed.

class: DialogResponseCallback

[465:7] extends: object

Generated low-level callback wrapper for GIR callback response.

Members

  • callbackObj
  • userFn
  • userData
  • hasUserData

Methods

  • DialogResponseCallback (callback Fn, UserData = null)

    Creates one native callback wrapper. The wrapper owns a trampoline that converts native pointers into generated wrapper objects before invoking Fn.

    • @p Fn is the Aussom callback implementation.
    • @p UserData is retained and passed through to Fn on each invocation when provided.
  • trampoline (nativeSelf, response_id, nativeUserData)

    Internal trampoline. Converts native pointer arguments into generated wrapper instances, then invokes the user's callback.

  • callback ()

    Returns the wrapped NativeCallback.

  • handle ()

    Returns the callback as a NativeHandle.

  • close ()

    Closes the underlying NativeCallback.

  • isClosed ()

    Returns true when the callback has been closed.

class: Dialog

[75:7] extends: object

Dialogs are a convenient way to prompt the user for a small amount of input. An example GtkDialog Typical uses are to display a message, ask a question, or anything else that does not require extensive effort on the user’s part. The main area of a GtkDialog is called the "content area", and is yours to populate with widgets such a GtkLabel or GtkEntry, to present your information, questions, or tasks to the user. In addition, dialogs allow you to add "action widgets". Most commonly, action widgets are buttons. Depending on the platform, action widgets may be presented in the header bar at the top of the window, or at the bottom of the window. To add action widgets, create your GtkDialog using [ctor@Gtk.Dialog.new_with_buttons], or use [method@Gtk.Dialog.add_button], [method@Gtk.Dialog.add_buttons], or [method@Gtk.Dialog.add_action_widget]. GtkDialogs uses some heuristics to decide whether to add a close button to the window decorations. If any of the action buttons use the response ID %GTK_RESPONSE_CLOSE or %GTK_RESPONSE_CANCEL, the close button is omitted. Clicking a button that was added as an action widget will emit the [signal@Gtk.Dialog::response] signal with a response ID that you specified. GTK will never assign a meaning to positive response IDs; these are entirely user-defined. But for convenience, you can use the response IDs in the [enum@Gtk.ResponseType] enumeration (these all have values less than zero). If a dialog receives a delete event, the [signal@Gtk.Dialog::response] signal will be emitted with the %GTK_RESPONSE_DELETE_EVENT response ID. Dialogs are created with a call to [ctor@Gtk.Dialog.new] or [ctor@Gtk.Dialog.new_with_buttons]. The latter is recommended; it allows you to set the dialog title, some convenient flags, and add buttons. A “modal” dialog (that is, one which freezes the rest of the application from user input), can be created by calling [method@Gtk.Window.set_modal] on the dialog. When using [ctor@Gtk.Dialog.new_with_buttons], you can also pass the %GTK_DIALOG_MODAL flag to make a dialog modal. For the simple dialog in the following example, a [class@Gtk.MessageDialog] would save some effort. But you’d need to create the dialog contents manually if you had more than a simple message in the dialog. An example for simple GtkDialog usage: c // Function to open a dialog box with a message void quick_message (GtkWindow *parent, char *message) { GtkWidget *dialog, *label, *content_area; GtkDialogFlags flags; // Create the widgets flags = GTK_DIALOG_DESTROY_WITH_PARENT; dialog = gtk_dialog_new_with_buttons ("Message", parent, flags, _("_OK"), GTK_RESPONSE_NONE, NULL); content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); label = gtk_label_new (message); // Ensure that the dialog box is destroyed when the user responds g_signal_connect_swapped (dialog, "response", G_CALLBACK (gtk_window_destroy), dialog); // Add the label, and show everything we’ve added gtk_box_append (GTK_BOX (content_area), label); gtk_widget_show (dialog); } # GtkDialog as GtkBuildable The GtkDialog implementation of the GtkBuildable interface exposes the @content_area as an internal child with the name “content_area”. GtkDialog supports a custom <action-widgets> element, which can contain multiple <action-widget> elements. The “response” attribute specifies a numeric response, and the content of the element is the id of widget (which should be a child of the dialogs @action_area). To mark a response as default, set the “default” attribute of the <action-widget> element to true. GtkDialog supports adding action widgets by specifying “action” as the “type” attribute of a <child> element. The widget will be added either to the action area or the headerbar of the dialog, depending on the “use-header-bar” property. The response id has to be associated with the action widget using the <action-widgets> element. An example of a GtkDialog UI definition fragment: xml <object class="GtkDialog" id="dialog1"> <child type="action"> <object class="GtkButton" id="button_cancel"/> </child> <child type="action"> <object class="GtkButton" id="button_ok"> </object> </child> <action-widgets> <action-widget response="cancel">button_cancel</action-widget> <action-widget response="ok" default="true">button_ok</action-widget> </action-widgets> </object> # Accessibility GtkDialog uses the %GTK_ACCESSIBLE_ROLE_DIALOG role.

Members

  • handleObj
  • lib
  • retainedCallbacks
  • signalHandlerNames
  • signalSetterHandlers

Methods

  • Dialog ()

    Creates a new dialog box. Widgets should not be packed into the GtkWindow directly, but into the @content_area and @action_area, as described above.

  • toNativeHandle (Source)

    Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from fn.call(...), another generated wrapper exposing handle(), or null. Returns null when the argument carries no pointer.

    • @p Source is the raw handle, raw buffer, wrapper, or null.
    • @r A raw pointer carrier or null when no pointer is present.
  • getLib ()

    Returns the opened native library for this generated wrapper.

    • @r The opened native library.
  • handle ()

    Returns the wrapped NativeHandle.

    • @r The wrapped NativeHandle.
  • isNull ()

    Returns true when the wrapped handle is null.

    • @r A bool.
  • describe ()

    Returns a small string for debugging generated wrappers.

    • @r A string.
  • asWindow ()

    Wraps this handle as Window.

    • @r A Window object.
  • asAccessible ()

    Wraps this handle as Accessible.

    • @r A Accessible object.
  • asBuildable ()

    Wraps this handle as Buildable.

    • @r A Buildable object.
  • asConstraintTarget ()

    Wraps this handle as ConstraintTarget.

    • @r A ConstraintTarget object.
  • asNative ()

    Wraps this handle as Native.

    • @r A Native object.
  • asRoot ()

    Wraps this handle as Root.

    • @r A Root object.
  • asShortcutManager ()

    Wraps this handle as ShortcutManager.

    • @r A ShortcutManager object.
  • connectSignal (string Name, CallbackObj)

    Connects one generated callback wrapper to a named signal.

    • @p Name is the signal name.
    • @p CallbackObj is the generated callback wrapper to connect.
    • @r The connected handler id.
  • disconnectSignalHandler (int HandlerId)

    Disconnects one retained signal handler id.

    • @p HandlerId is the signal handler id to disconnect.
    • @r None.
  • setOnClose (callback Fn, UserData = null)

    Emitted when the user uses a keybinding to close the dialog. This is a keybinding signal. The default binding for this signal is the Escape key.

    • @p Fn is the Aussom callback.
    • @p Fn is called with (Dialog Self).
    • @p UserData is retained and passed through to the generated callback wrapper when provided.
    • @r The connected handler id.
  • setOnResponse (callback Fn, UserData = null)

    Emitted when an action widget is clicked. The signal is also emitted when the dialog receives a delete event, and when [method@Gtk.Dialog.response] is called. On a delete event, the response ID is %GTK_RESPONSE_DELETE_EVENT. Otherwise, it depends on which action widget was clicked.

    • @p Fn is the Aussom callback.
    • @p Fn is called with (Dialog Self, string Response_id).
    • @p UserData is retained and passed through to the generated callback wrapper when provided.
    • @r The connected handler id.
  • add_action_widget (object child, string response_id)

    Adds an activatable widget to the action area of a GtkDialog. GTK connects a signal handler that will emit the [signal@Gtk.Dialog::response] signal on the dialog when the widget is activated. The widget is appended to the end of the dialog’s action area. If you want to add a non-activatable widget, simply pack it into the

    • @action_area field of the GtkDialog struct.
    • @p child is an activatable widget.
    • @p response_id is response ID for @child.
    • @r None.
  • add_button (string button_text, string response_id)

    Adds a button with the given text. GTK arranges things so that clicking the button will emit the [signal@Gtk.Dialog::response] signal with the given @response_id. The button is appended to the end of the dialog’s action area. The button widget is returned, but usually you don’t need it.

    • @p button_text is text of button.
    • @p response_id is response ID for the button.
  • get_content_area ()

    Returns the content area of @dialog.

  • get_header_bar ()

    Returns the header bar of @dialog. Note that the headerbar is only used by the dialog if the [property@Gtk.Dialog:use-header-bar] property is %TRUE.

  • get_response_for_widget (object widget)

    Gets the response id of a widget in the action area of a dialog.

    • @p widget is a widget in the action area of @dialog.
  • get_widget_for_response (string response_id)

    Gets the widget button that uses the given response ID in the action area of a dialog.

    • @p response_id is the response ID used by the @dialog widget.
  • response (string response_id)

    Emits the ::response signal with the given response ID. Used to indicate that the user has responded to the dialog in some way.

    • @p response_id is response ID.
    • @r None.
  • set_default_response (string response_id)

    Sets the default widget for the dialog based on the response ID. Pressing “Enter” normally activates the default widget.

    • @p response_id is a response ID.
    • @r None.
  • set_response_sensitive (string response_id, bool setting)

    A convenient way to sensitize/desensitize dialog buttons. Calls gtk_widget_set_sensitive (widget, @setting) for each widget in the dialog’s action area with the given @response_id.

    • @p response_id is a response ID.
    • @p setting is %TRUE for sensitive.
    • @r None.

class: DialogMeta

[536:14] static extends: object

Generated metadata helpers for Dialog class surfaces.

Methods

  • properties ()

    Returns property metadata for Dialog.

    • @r A list.
  • signals ()

    Returns signal metadata for Dialog.

    • @r A list.