aboutsummaryrefslogtreecommitdiffstats
path: root/src/menu.c
diff options
context:
space:
mode:
authorCecilio Pardo2024-09-11 15:44:28 +0200
committerEli Zaretskii2024-09-14 13:57:26 +0300
commitaa7dee58d81817285208471074f1af598ebf0c98 (patch)
tree2ff7a33af0eebdd12d1890eaf205ef4a84838e1d /src/menu.c
parentdb1eb8a282c1832fd34be049e80dcb1a3b59ade2 (diff)
downloademacs-aa7dee58d81817285208471074f1af598ebf0c98.tar.gz
emacs-aa7dee58d81817285208471074f1af598ebf0c98.zip
Support GUI dialogs and message boxes better on MS-Windows
* src/w32menu.c (TASKDIALOG_COMMON_BUTTON_FLAGS, TASKDIALOG_FLAGS) (PFTASKDIALOGCALLBACK, TASKDIALOG_BUTTON, TASKDIALOGCONFIG) (TDN_CREATED, TDM_ENABLE_BUTTON, TDF_ALLOW_DIALOG_CANCELLATION) (TD_INFORMATION_ICON) [!MINGW_W64]: Define. (TaskDialogIndirect_Proc): Declare function type. (TASK_DIALOG_MAX_BUTTONS): New macro. (task_dialog_callback): New callback function. (w32_popup_dialog): Add dialog implementation using TaskDialog. (globals_of_w32menu): Load TaskDialogIndirect from comctl32.dll. (Bug#20481)
Diffstat (limited to 'src/menu.c')
-rw-r--r--src/menu.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/menu.c b/src/menu.c
index de4d0964e9c..6b4aaef1715 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -1594,9 +1594,10 @@ for instance using the window manager, then this produces a quit and
1594 Lisp_Object selection 1594 Lisp_Object selection
1595 = FRAME_TERMINAL (f)->popup_dialog_hook (f, header, contents); 1595 = FRAME_TERMINAL (f)->popup_dialog_hook (f, header, contents);
1596#ifdef HAVE_NTGUI 1596#ifdef HAVE_NTGUI
1597 /* NTGUI supports only simple dialogs with Yes/No choices. For 1597 /* NTGUI on Windows versions before Vista supports only simple
1598 other dialogs, it returns the symbol 'unsupported--w32-dialog', 1598 dialogs with Yes/No choices. For other dialogs, it returns the
1599 as a signal for the caller to fall back to the emulation code. */ 1599 symbol 'unsupported--w32-dialog', as a signal for the caller to
1600 fall back to the emulation code. */
1600 if (!EQ (selection, Qunsupported__w32_dialog)) 1601 if (!EQ (selection, Qunsupported__w32_dialog))
1601#endif 1602#endif
1602 return selection; 1603 return selection;