Class MessageDialog
- All Implemented Interfaces:
Proxy
,Accessible
,Buildable
,ConstraintTarget
,Native
,Root
,ShortcutManager
GtkMessageDialog
presents a dialog with some message text.
It’s simply a convenience widget; you could construct the equivalent of
GtkMessageDialog
from GtkDialog
without too much effort, but
GtkMessageDialog
saves typing.
The easiest way to do a modal message dialog is to use the DialogFlags.MODAL
flag, which will call Window.setModal(boolean)
internally. The dialog will
prevent interaction with the parent window until it's hidden or destroyed.
You can use the Gtk.Dialog::response
signal to know when the user
dismissed the dialog.
An example for using a modal dialog:
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 GtkMessageDialog
simply by omitting the
DialogFlags.MODAL
flag:
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”.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
MessageDialog.Builder<B extends MessageDialog.Builder<B>>
Deprecated.Inner class implementing a builder pattern to construct a GObject with properties.static class
Deprecated.Nested classes/interfaces inherited from class org.gnome.gtk.Dialog
Dialog.CloseCallback, Dialog.DialogClass, Dialog.ResponseCallback
Nested classes/interfaces inherited from class org.gnome.gtk.Window
Window.ActivateDefaultCallback, Window.ActivateFocusCallback, Window.CloseRequestCallback, Window.EnableDebuggingCallback, Window.KeysChangedCallback, Window.WindowClass
Nested classes/interfaces inherited from class org.gnome.gtk.Widget
Widget.DestroyCallback, Widget.DirectionChangedCallback, Widget.HideCallback, Widget.KeynavFailedCallback, Widget.MapCallback, Widget.MnemonicActivateCallback, Widget.MoveFocusCallback, Widget.QueryTooltipCallback, Widget.RealizeCallback, Widget.ShowCallback, Widget.StateFlagsChangedCallback, Widget.UnmapCallback, Widget.UnrealizeCallback, Widget.WidgetClass, Widget.WidgetImpl
Nested classes/interfaces inherited from class org.gnome.gobject.InitiallyUnowned
InitiallyUnowned.InitiallyUnownedClass
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
Nested classes/interfaces inherited from interface org.gnome.gtk.Accessible
Accessible.AccessibleImpl, Accessible.AccessibleInterface
Nested classes/interfaces inherited from interface org.gnome.gtk.Buildable
Buildable.BuildableIface, Buildable.BuildableImpl
Nested classes/interfaces inherited from interface org.gnome.gtk.ConstraintTarget
ConstraintTarget.ConstraintTargetImpl, ConstraintTarget.ConstraintTargetInterface
Nested classes/interfaces inherited from interface org.gnome.gtk.Native
Native.NativeImpl, Native.NativeInterface
Nested classes/interfaces inherited from interface org.gnome.gtk.Root
Root.RootImpl, Root.RootInterface
Nested classes/interfaces inherited from interface org.gnome.gtk.ShortcutManager
ShortcutManager.ShortcutManagerImpl, ShortcutManager.ShortcutManagerInterface
-
Constructor Summary
ConstructorDescriptionMessageDialog
(MemorySegment address) Deprecated.Create a MessageDialog proxy instance for the provided memory address.MessageDialog
(@Nullable Window parent, Set<DialogFlags> flags, MessageType type, ButtonsType buttons, @Nullable String messageFormat, Object... varargs) Deprecated.MessageDialog
(@Nullable Window parent, DialogFlags flags, MessageType type, ButtonsType buttons, @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
instead -
Method Summary
Modifier and TypeMethodDescriptionprotected MessageDialog
asParent()
Deprecated.Returns this instance as if it were its parent type.static MessageDialog.Builder
<? extends MessageDialog.Builder> builder()
Deprecated.AMessageDialog.Builder
object constructs aMessageDialog
with the specified properties.void
formatSecondaryMarkup
(String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadvoid
formatSecondaryText
(@Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadstatic MemoryLayout
Deprecated.The memory layout of the native struct.Deprecated.UseAlertDialog
insteadstatic Type
getType()
Deprecated.Get the GType of the MessageDialog classvoid
Deprecated.UseAlertDialog
insteadstatic MessageDialog
withMarkup
(@Nullable Window parent, Set<DialogFlags> flags, MessageType type, ButtonsType buttons, @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadstatic Widget
withMarkup
(@Nullable Window parent, DialogFlags flags, MessageType type, ButtonsType buttons, @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadMethods inherited from class org.gnome.gtk.Dialog
addActionWidget, addButton, addButtons, close, emitClose, emitResponse, getContentArea, getHeaderBar, getResponseForWidget, getWidgetForResponse, onClose, onResponse, response, setDefaultResponse, setResponseSensitive, withButtons, withButtons
Methods inherited from class org.gnome.gtk.Window
activateDefault, activateFocus, closeRequest, destroy, emitActivateDefault, emitActivateFocus, emitCloseRequest, emitEnableDebugging, emitKeysChanged, enableDebugging, fullscreen, fullscreenOnMonitor, getApplication, getChild, getDecorated, getDefaultIconName, getDefaultSize, getDefaultWidget, getDeletable, getDestroyWithParent, getFocus, getFocusVisible, getGroup, getHandleMenubarAccel, getHideOnClose, getIconName, getMnemonicsVisible, getModal, getResizable, getTitle, getTitlebar, getToplevels, getTransientFor, hasGroup, isActive, isFullscreen, isMaximized, isSuspended, keysChanged, listToplevels, maximize, minimize, onActivateDefault, onActivateFocus, onCloseRequest, onEnableDebugging, onKeysChanged, present, presentWithTime, setApplication, setAutoStartupNotification, setChild, setDecorated, setDefaultIconName, setDefaultSize, setDefaultWidget, setDeletable, setDestroyWithParent, setDisplay, setFocus, setFocusVisible, setHandleMenubarAccel, setHideOnClose, setIconName, setInteractiveDebugging, setMnemonicsVisible, setModal, setResizable, setStartupId, setTitle, setTitlebar, setTransientFor, unfullscreen, unmaximize, unminimize
Methods inherited from class org.gnome.gtk.Widget
actionSetEnabled, activateActionIfExists, activateWidget, addController, addCssClass, addMnemonicLabel, addTickCallback, allocate, childFocus, computeBounds, computeExpand, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, cssChanged, directionChanged, disposeTemplate, dragCheckThreshold, emitDestroy, emitDirectionChanged, emitHide, emitKeynavFailed, emitMap, emitMnemonicActivate, emitMoveFocus, emitQueryTooltip, emitRealize, emitShow, emitStateFlagsChanged, emitUnmap, emitUnrealize, errorBell, focus, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getBaseline, getCanFocus, getCanTarget, getChildVisible, getClipboard, getColor, getCssClasses, getCssName, getCursor, getDefaultDirection, getDirection, getDisplay, getFirstChild, getFocusable, getFocusChild, getFocusOnClick, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getName, getNative, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth, grabFocus, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, moveFocus, observeChildren, observeControllers, onDestroy, onDirectionChanged, onHide, onKeynavFailed, onMap, onMnemonicActivate, onMoveFocus, onQueryTooltip, onRealize, onShow, onStateFlagsChanged, onUnmap, onUnrealize, pick, pick, queryTooltip, queueAllocate, queueDraw, queueResize, realize, removeController, removeCssClass, removeMnemonicLabel, removeTickCallback, root, setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setDefaultDirection, setDirection, setFocusable, setFocusChild, setFocusOnClick, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setOpacity, setOverflow, setParent, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible, shouldLayout, show, sizeAllocate, sizeAllocate, snapshot, snapshotChild, stateFlagsChanged, systemSettingChanged, translateCoordinates, triggerTooltipQuery, unmap, unparent, unrealize, unroot, unsetStateFlags, unsetStateFlags
Methods inherited from class org.gnome.gobject.GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newInstance, newInstance, newv, notify_, notify_, notifyByPspec, onNotify, ref, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref, withProperties
Methods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, getPrivate, readGClass, writeGClass
Methods inherited from class io.github.jwharm.javagi.base.ProxyInstance
equals, handle, hashCode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.gnome.gtk.Accessible
announce, getAccessibleParent, getAccessibleRole, getAtContext, getBounds, getFirstAccessibleChild, getNextAccessibleSibling, getPlatformState, resetProperty, resetRelation, resetState, setAccessibleParent, updateNextAccessibleSibling, updateProperty, updateRelation, updateState
Methods inherited from interface org.gnome.gtk.Buildable
getBuildableId
Methods inherited from interface org.gnome.gtk.Native
getRenderer, getSurface, getSurfaceTransform, realize, unrealize
Methods inherited from interface org.gnome.gtk.Root
getDisplay, getFocus, setFocus
-
Constructor Details
-
MessageDialog
Deprecated.Create a MessageDialog proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
MessageDialog
@Deprecated public MessageDialog(@Nullable @Nullable Window parent, Set<DialogFlags> flags, MessageType type, ButtonsType buttons, @Nullable @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadCreates a new message dialog.This is a simple dialog with some text the user may want to see. When the user clicks a button a “response” signal is emitted with response IDs from
Gtk.ResponseType
. SeeDialog
for more details.- Parameters:
parent
- transient parentflags
- flagstype
- type of messagebuttons
- set of buttons to usemessageFormat
- printf()-style format stringvarargs
- arguments formessageFormat
-
MessageDialog
@Deprecated public MessageDialog(@Nullable @Nullable Window parent, DialogFlags flags, MessageType type, ButtonsType buttons, @Nullable @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadCreates a new message dialog.This is a simple dialog with some text the user may want to see. When the user clicks a button a “response” signal is emitted with response IDs from
Gtk.ResponseType
. SeeDialog
for more details.- Parameters:
parent
- transient parentflags
- flagstype
- type of messagebuttons
- set of buttons to usemessageFormat
- printf()-style format stringvarargs
- arguments formessageFormat
-
-
Method Details
-
getType
Deprecated.Get the GType of the MessageDialog class- Returns:
- the GType
-
getMemoryLayout
Deprecated.The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Deprecated.Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuper
keyword, but will set the native typeclass function pointers to the parent type. When overriding a native virtual method in Java, "chaining up" withsuper.methodName()
doesn't work, because it invokes the overridden function pointer again. To chain up, callasParent().methodName()
. This will call the native function pointer of this virtual method in the typeclass of the parent type. -
withMarkup
@Deprecated public static MessageDialog withMarkup(@Nullable @Nullable Window parent, Set<DialogFlags> flags, MessageType type, ButtonsType buttons, @Nullable @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadCreates a new message dialog.This is a simple dialog with some text that is marked up with Pango markup. When the user clicks a button a “response” signal is emitted with response IDs from
Gtk.ResponseType
. SeeDialog
for more details.Special XML characters in the printf() arguments passed to this function will automatically be escaped as necessary. (See g_markup_printf_escaped() for how this is implemented.) Usually this is what you want, but if you have an existing Pango markup string that you want to use literally as the label, then you need to use
setMarkup(java.lang.String)
instead, since you can’t pass the markup string either as the format (it might contain “%” characters) or as a string argument.GtkWidget *dialog; GtkDialogFlags flags = GTK_DIALOG_DESTROY_WITH_PARENT; dialog = gtk_message_dialog_new (parent_window, flags, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, NULL); gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (dialog), markup);
- Parameters:
parent
- transient parentflags
- flagstype
- type of messagebuttons
- set of buttons to usemessageFormat
- printf()-style format stringvarargs
- arguments formessageFormat
- Returns:
- a new
GtkMessageDialog
-
withMarkup
@Deprecated public static Widget withMarkup(@Nullable @Nullable Window parent, DialogFlags flags, MessageType type, ButtonsType buttons, @Nullable @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadCreates a new message dialog.This is a simple dialog with some text that is marked up with Pango markup. When the user clicks a button a “response” signal is emitted with response IDs from
Gtk.ResponseType
. SeeDialog
for more details.Special XML characters in the printf() arguments passed to this function will automatically be escaped as necessary. (See g_markup_printf_escaped() for how this is implemented.) Usually this is what you want, but if you have an existing Pango markup string that you want to use literally as the label, then you need to use
setMarkup(java.lang.String)
instead, since you can’t pass the markup string either as the format (it might contain “%” characters) or as a string argument.GtkWidget *dialog; GtkDialogFlags flags = GTK_DIALOG_DESTROY_WITH_PARENT; dialog = gtk_message_dialog_new (parent_window, flags, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, NULL); gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (dialog), markup);
- Parameters:
parent
- transient parentflags
- flagstype
- type of messagebuttons
- set of buttons to usemessageFormat
- printf()-style format stringvarargs
- arguments formessageFormat
- Returns:
- a new
GtkMessageDialog
-
formatSecondaryMarkup
Deprecated.UseAlertDialog
insteadSets the secondary text of the message dialog.The
messageFormat
is assumed to contain Pango markup.Due to an oversight, this function does not escape special XML characters like
withMarkup(org.gnome.gtk.Window, java.util.Set<org.gnome.gtk.DialogFlags>, org.gnome.gtk.MessageType, org.gnome.gtk.ButtonsType, java.lang.String, java.lang.Object...)
does. Thus, if the arguments may contain special XML characters, you should use g_markup_printf_escaped() to escape it.char *msg; msg = g_markup_printf_escaped (message_format, ...); gtk_message_dialog_format_secondary_markup (message_dialog, "%s", msg); g_free (msg);
- Parameters:
messageFormat
- printf()-style string with Pango markupvarargs
- arguments formessageFormat
-
formatSecondaryText
@Deprecated public void formatSecondaryText(@Nullable @Nullable String messageFormat, Object... varargs) Deprecated.UseAlertDialog
insteadSets the secondary text of the message dialog.- Parameters:
messageFormat
- printf()-style format stringvarargs
- arguments formessageFormat
-
getMessageArea
Deprecated.UseAlertDialog
insteadReturns 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
Dialog.getContentArea()
for the corresponding function in the parentDialog
.- Returns:
- A
GtkBox
corresponding to the “message area” in the this MessageDialog
-
setMarkup
Deprecated.UseAlertDialog
insteadSets the text of the message dialog.- Parameters:
str
- string with Pango markup
-
builder
Deprecated.AMessageDialog.Builder
object constructs aMessageDialog
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withMessageDialog.Builder.build()
.
-
AlertDialog
instead