From d23928c7042801a5b2bcfb3359c0ca9b338d5e08 Mon Sep 17 00:00:00 2001 From: Nick Roberts Date: Tue, 24 May 2005 08:38:58 +0000 Subject: [PATCH] (Fx_popup_dialog): Add a third boolean argument to select frame title ("Question"/"Information"). (w32_dialog_show): Use it. --- src/w32menu.c | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/w32menu.c b/src/w32menu.c index 4553895d829..32441e4a351 100644 --- a/src/w32menu.c +++ b/src/w32menu.c @@ -860,9 +860,12 @@ The return value is VALUE from the chosen item. An ITEM may also be just a string--that makes a nonselectable item. An ITEM may also be nil--that means to put all preceding items on the left of the dialog box and all following items on the right. -\(By default, approximately half appear on each side.) */) - (position, contents) - Lisp_Object position, contents; +\(By default, approximately half appear on each side.) + +If HEADER is non-nil, the frame title for the box is "Information", +otherwise it is "Question". */) + (position, contents, header) + Lisp_Object position, contents, header; { FRAME_PTR f = NULL; Lisp_Object window; @@ -949,7 +952,7 @@ on the left of the dialog box and all following items on the right. /* Display them in a dialog box. */ BLOCK_INPUT; - selection = w32_dialog_show (f, 0, title, &error_name); + selection = w32_dialog_show (f, 0, title, header, &error_name); UNBLOCK_INPUT; discard_menu_items (); @@ -1995,10 +1998,10 @@ static char * button_names [] = { "button6", "button7", "button8", "button9", "button10" }; static Lisp_Object -w32_dialog_show (f, keymaps, title, error) +w32_dialog_show (f, keymaps, title, header, error) FRAME_PTR f; int keymaps; - Lisp_Object title; + Lisp_Object title, header; char **error; { int i, nb_buttons=0; @@ -2099,11 +2102,17 @@ w32_dialog_show (f, keymaps, title, error) wv->name = dialog_name; wv->help = Qnil; + /* Frame title: 'Q' = Question, 'I' = Information. + Can also have 'E' = Error if, one day, we want + a popup for errors. */ + if (NILP(header)) + dialog_name[0] = 'Q'; + else + dialog_name[0] = 'I'; + /* Dialog boxes use a really stupid name encoding which specifies how many buttons to use - and how many buttons are on the right. - The Q means something also. */ - dialog_name[0] = 'Q'; + and how many buttons are on the right. */ dialog_name[1] = '0' + nb_buttons; dialog_name[2] = 'B'; dialog_name[3] = 'R'; -- 2.39.2