gi-gtk-4.0.2: Gtk bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gtk.Objects.MessageDialog

Description

MessageDialog presents a dialog with some message text. It’s simply a convenience widget; you could construct the equivalent of MessageDialog from Dialog without too much effort, but MessageDialog saves typing.

The easiest way to do a modal message dialog is to use the DialogFlagsModal flag, which will call windowSetModal internally. The dialog will prevent interaction with the parent window until it's hidden or destroyed. You can use the response signal to know when the user dismissed the dialog.

An example for using a modal dialog:

C code

GtkDialogFlags flags = GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_MODAL;
dialog = gtk_message_dialog_new (parent_window,
                                 flags,
                                 GTK_MESSAGE_ERROR,
                                 GTK_BUTTONS_CLOSE,
                                 "Error reading “%s”: %s",
                                 filename,
                                 g_strerror (errno));
// Destroy the dialog when the user responds to it
// (e.g. clicks a button)

g_signal_connect (dialog, "response",
                  G_CALLBACK (gtk_window_destroy),
                  NULL);

You might do a non-modal MessageDialog simply by omitting the DialogFlagsModal flag:

C code

GtkDialogFlags flags = GTK_DIALOG_DESTROY_WITH_PARENT;
dialog = gtk_message_dialog_new (parent_window,
                                 flags,
                                 GTK_MESSAGE_ERROR,
                                 GTK_BUTTONS_CLOSE,
                                 "Error reading “%s”: %s",
                                 filename,
                                 g_strerror (errno));

// Destroy the dialog when the user responds to it
// (e.g. clicks a button)
g_signal_connect (dialog, "response",
                  G_CALLBACK (gtk_window_destroy),
                  NULL);

GtkMessageDialog as GtkBuildable

The GtkMessageDialog implementation of the GtkBuildable interface exposes the message area as an internal child with the name “message_area”.

Synopsis

Exported types

class (GObject o, IsDescendantOf MessageDialog o) => IsMessageDialog o Source #

Type class for types which can be safely cast to MessageDialog, for instance with toMessageDialog.

Instances

Instances details
(GObject o, IsDescendantOf MessageDialog o) => IsMessageDialog o Source # 
Instance details

Defined in GI.Gtk.Objects.MessageDialog

toMessageDialog :: (MonadIO m, IsMessageDialog o) => o -> m MessageDialog Source #

Cast to MessageDialog, for types for which this is known to be safe. For general casts, use castTo.

Methods

Overloaded methods

getMessageArea

messageDialogGetMessageArea Source #

Arguments

:: (HasCallStack, MonadIO m, IsMessageDialog a) 
=> a

messageDialog: a MessageDialog

-> m Widget

Returns: A Box corresponding to the “message area” in the messageDialog.

Returns the message area of the dialog. This is the box where the dialog’s primary and secondary labels are packed. You can add your own extra content to that box and it will appear below those labels. See dialogGetContentArea for the corresponding function in the parent Dialog.

setMarkup

messageDialogSetMarkup Source #

Arguments

:: (HasCallStack, MonadIO m, IsMessageDialog a) 
=> a

messageDialog: a MessageDialog

-> Text

str: markup string (see [Pango markup format][PangoMarkupFormat])

-> m () 

Sets the text of the message dialog to be str, which is marked up with the [Pango text markup language][PangoMarkupFormat].

Properties

buttons

No description available in the introspection data.

constructMessageDialogButtons :: (IsMessageDialog o, MonadIO m) => ButtonsType -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “buttons” property. This is rarely needed directly, but it is used by new.

messageArea

The Box that corresponds to the message area of this dialog. See messageDialogGetMessageArea for a detailed description of this area.

getMessageDialogMessageArea :: (MonadIO m, IsMessageDialog o) => o -> m Widget Source #

Get the value of the “message-area” property. When overloading is enabled, this is equivalent to

get messageDialog #messageArea

messageType

The type of the message.

constructMessageDialogMessageType :: (IsMessageDialog o, MonadIO m) => MessageType -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “message-type” property. This is rarely needed directly, but it is used by new.

getMessageDialogMessageType :: (MonadIO m, IsMessageDialog o) => o -> m MessageType Source #

Get the value of the “message-type” property. When overloading is enabled, this is equivalent to

get messageDialog #messageType

setMessageDialogMessageType :: (MonadIO m, IsMessageDialog o) => o -> MessageType -> m () Source #

Set the value of the “message-type” property. When overloading is enabled, this is equivalent to

set messageDialog [ #messageType := value ]

secondaryText

The secondary text of the message dialog.

clearMessageDialogSecondaryText :: (MonadIO m, IsMessageDialog o) => o -> m () Source #

Set the value of the “secondary-text” property to Nothing. When overloading is enabled, this is equivalent to

clear #secondaryText

constructMessageDialogSecondaryText :: (IsMessageDialog o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “secondary-text” property. This is rarely needed directly, but it is used by new.

getMessageDialogSecondaryText :: (MonadIO m, IsMessageDialog o) => o -> m (Maybe Text) Source #

Get the value of the “secondary-text” property. When overloading is enabled, this is equivalent to

get messageDialog #secondaryText

setMessageDialogSecondaryText :: (MonadIO m, IsMessageDialog o) => o -> Text -> m () Source #

Set the value of the “secondary-text” property. When overloading is enabled, this is equivalent to

set messageDialog [ #secondaryText := value ]

secondaryUseMarkup

True if the secondary text of the dialog includes Pango markup. See parseMarkup.

constructMessageDialogSecondaryUseMarkup :: (IsMessageDialog o, MonadIO m) => Bool -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “secondary-use-markup” property. This is rarely needed directly, but it is used by new.

getMessageDialogSecondaryUseMarkup :: (MonadIO m, IsMessageDialog o) => o -> m Bool Source #

Get the value of the “secondary-use-markup” property. When overloading is enabled, this is equivalent to

get messageDialog #secondaryUseMarkup

setMessageDialogSecondaryUseMarkup :: (MonadIO m, IsMessageDialog o) => o -> Bool -> m () Source #

Set the value of the “secondary-use-markup” property. When overloading is enabled, this is equivalent to

set messageDialog [ #secondaryUseMarkup := value ]

text

The primary text of the message dialog. If the dialog has a secondary text, this will appear as the title.

clearMessageDialogText :: (MonadIO m, IsMessageDialog o) => o -> m () Source #

Set the value of the “text” property to Nothing. When overloading is enabled, this is equivalent to

clear #text

constructMessageDialogText :: (IsMessageDialog o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “text” property. This is rarely needed directly, but it is used by new.

getMessageDialogText :: (MonadIO m, IsMessageDialog o) => o -> m (Maybe Text) Source #

Get the value of the “text” property. When overloading is enabled, this is equivalent to

get messageDialog #text

setMessageDialogText :: (MonadIO m, IsMessageDialog o) => o -> Text -> m () Source #

Set the value of the “text” property. When overloading is enabled, this is equivalent to

set messageDialog [ #text := value ]

useMarkup

True if the primary text of the dialog includes Pango markup. See parseMarkup.

constructMessageDialogUseMarkup :: (IsMessageDialog o, MonadIO m) => Bool -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “use-markup” property. This is rarely needed directly, but it is used by new.

getMessageDialogUseMarkup :: (MonadIO m, IsMessageDialog o) => o -> m Bool Source #

Get the value of the “use-markup” property. When overloading is enabled, this is equivalent to

get messageDialog #useMarkup

setMessageDialogUseMarkup :: (MonadIO m, IsMessageDialog o) => o -> Bool -> m () Source #

Set the value of the “use-markup” property. When overloading is enabled, this is equivalent to

set messageDialog [ #useMarkup := value ]