A dialog box is a variant of a pop-up menu—it looks a little
different, it always appears in the center of a frame, and it has just
one level and one or more buttons. The main use of dialog boxes is
for asking questions that the user can answer with “yes”, “no”,
and a few other alternatives. With a single button, they can also
force the user to acknowledge important information. The functions
yes-or-no-p use dialog boxes instead of the
keyboard, when called from commands invoked by mouse clicks.
This function displays a pop-up dialog box and returns an indication of what selection the user makes. The argument contents specifies the alternatives to offer; it has this format:(title (string . value)...)
which looks like the list that specifies a single pane for
The return value is value from the chosen alternative.
x-popup-menu, an element of the list may be just a string instead of a cons cell
). That makes a box that cannot be selected.
nilappears in the list, it separates the left-hand items from the right-hand items; items that precede the
nilappear on the left, and items that follow the
nilappear on the right. If you don't include a
nilin the list, then approximately half the items appear on each side.
Dialog boxes always appear in the center of a frame; the argument position specifies which frame. The possible values are as in
x-popup-menu, but the precise coordinates or the individual window don't matter; only the frame matters.
If header is non-
nil, the frame title for the box is ‘Information’, otherwise it is ‘Question’. The former is used for
message-box(see message-box). (On text terminals, the box title is not displayed.)
In some configurations, Emacs cannot display a real dialog box; so instead it displays the same items in a pop-up menu in the center of the frame.
If the user gets rid of the dialog box without making a valid choice, for instance using the window manager, then this produces a quit and
x-popup-dialogdoes not return.