diff options
| author | Richard M. Stallman <rms@gnu.org> | 1993-03-15 05:50:02 +0000 |
|---|---|---|
| committer | Richard M. Stallman <rms@gnu.org> | 1993-03-15 05:50:02 +0000 |
| commit | 2d66ad19c51cf44225d8ea6917a5db4364630a93 (patch) | |
| tree | acc0d249c1fa6d73514c611bea2af6f6146991df | |
| parent | 48e416d4fd79a60052ff114709ccd8293e058b07 (diff) | |
| download | emacs-2d66ad19c51cf44225d8ea6917a5db4364630a93.tar.gz | |
(display_menu_bar): Assume FRAME_MENU_BAR_ITEMS already set.
Fill out line with spaces.
Put explicit spaces between items.
| -rw-r--r-- | src/xdisp.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index c38021f9c9d..02a70af1b24 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -1848,12 +1848,10 @@ display_menu_bar (w) get_display_line (f, vpos, 0); - items = menu_bar_items (); - FRAME_MENU_BAR_ITEMS (f) = items; - - for (tail = items; CONSP (tail); tail = XCONS (tail)->cdr) + for (tail = FRAME_MENU_BAR_ITEMS (f); CONSP (tail); tail = XCONS (tail)->cdr) { Lisp_Object string; + string = XCONS (XCONS (XCONS (tail)->car)->cdr)->car; /* Record in each item its hpos. */ @@ -1862,11 +1860,22 @@ display_menu_bar (w) if (hpos < maxendcol) hpos = display_string (XWINDOW (FRAME_ROOT_WINDOW (f)), vpos, XSTRING (string)->data, - hpos, 0, hpos, maxendcol) + 3; + hpos, 0, hpos, maxendcol); + /* Put a gap of 3 spaces between items. */ + if (hpos < maxendcol) + { + int hpos1 = hpos + 3; + hpos = display_string (w, vpos, "", hpos, 0, + min (hpos1, maxendcol), maxendcol); + } } FRAME_DESIRED_GLYPHS (f)->bufp[vpos] = 0; FRAME_DESIRED_GLYPHS (f)->highlight[vpos] = mode_line_inverse_video; + + /* Fill out the line with spaces. */ + if (maxendcol > hpos) + hpos = display_string (w, vpos, "", hpos, 0, maxendcol, -1); } /* Display the mode line for window w */ |
