diff options
| -rw-r--r-- | lwlib/xlwmenu.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/lwlib/xlwmenu.c b/lwlib/xlwmenu.c index 31773e1e001..4b5e589538f 100644 --- a/lwlib/xlwmenu.c +++ b/lwlib/xlwmenu.c | |||
| @@ -516,10 +516,19 @@ display_menu_item (mw, val, ws, where, highlighted_p, horizontal_p, just_compute | |||
| 516 | } | 516 | } |
| 517 | else | 517 | else |
| 518 | { | 518 | { |
| 519 | int x_offset = x + h_spacing + shadow; | ||
| 519 | char* display_string = resource_widget_value (mw, val); | 520 | char* display_string = resource_widget_value (mw, val); |
| 520 | draw_shadow_rectangle (mw, ws->window, x, y, width, height, True); | 521 | draw_shadow_rectangle (mw, ws->window, x, y, width, height, True); |
| 521 | XDrawString (XtDisplay (mw), ws->window, text_gc, | 522 | |
| 522 | x + h_spacing + shadow, | 523 | /* Deal with centering a menu title. */ |
| 524 | if (!horizontal_p && !val->contents && !val->call_data) | ||
| 525 | { | ||
| 526 | int l = string_width (mw, display_string); | ||
| 527 | |||
| 528 | if (width > l) | ||
| 529 | x_offset = (width - l) >> 1; | ||
| 530 | } | ||
| 531 | XDrawString (XtDisplay (mw), ws->window, text_gc, x_offset, | ||
| 523 | y + v_spacing + shadow + font_ascent, | 532 | y + v_spacing + shadow + font_ascent, |
| 524 | display_string, strlen (display_string)); | 533 | display_string, strlen (display_string)); |
| 525 | 534 | ||