# HG changeset patch # User Eli Zaretskii # Date 992604582 0 # Node ID 0b34b024286d0a727384491ba31fd22aa53a9355 # Parent 647c8404a67005fe6aaef4c3542056e5ac54f193 (Fmessage_box): If the frame is not under a window system, output the message in the echo area. diff -r 647c8404a670 -r 0b34b024286d src/editfns.c --- a/src/editfns.c Fri Jun 15 10:51:45 2001 +0000 +++ b/src/editfns.c Fri Jun 15 11:29:42 2001 +0000 @@ -38,6 +38,7 @@ #include "buffer.h" #include "charset.h" #include "coding.h" +#include "frame.h" #include "window.h" #include "systime.h" @@ -2915,16 +2916,12 @@ return unbind_to (count, val); } -#ifndef HAVE_MENUS - -/* Buffer for the most recent text displayed by Fmessage. */ +/* Buffer for the most recent text displayed by Fmessage_box. */ static char *message_text; /* Allocated length of that buffer. */ static int message_length; -#endif /* not HAVE_MENUS */ - DEFUN ("message", Fmessage, Smessage, 1, MANY, 0, "Print a one-line message at the bottom of the screen.\n\ The first argument is a format control string, and the rest are data\n\ @@ -2972,6 +2969,10 @@ register Lisp_Object val; val = Fformat (nargs, args); #ifdef HAVE_MENUS + /* The MS-DOS frames support popup menus even though they are + not FRAME_WINDOW_P. */ + if (FRAME_WINDOW_P (XFRAME (selected_frame)) + || FRAME_MSDOS_P (XFRAME (selected_frame))) { Lisp_Object pane, menu, obj; struct gcpro gcpro1; @@ -2982,7 +2983,7 @@ UNGCPRO; return val; } -#else /* not HAVE_MENUS */ +#endif /* HAVE_MENUS */ /* Copy the data so that it won't move when we GC. */ if (! message_text) { @@ -2998,7 +2999,6 @@ message2 (message_text, STRING_BYTES (XSTRING (val)), STRING_MULTIBYTE (val)); return val; -#endif /* not HAVE_MENUS */ } } #ifdef HAVE_MENUS