Fix 'redraw' of checklist box. It is occurs in situation when size of
checklist box is strictly set via command line, but amount of checklist items less than height of checklist box. In this case bottom part of box was not redrawn (occurs when passing focus behind of 'Cancel' button while configuring any FreeBSD port OPTIONS) MFC after: 3 days
This commit is contained in:
parent
34a9937988
commit
f10f804f01
@ -567,6 +567,15 @@ dialog_checklist(unsigned char *title, unsigned char *prompt, int height, int wi
|
||||
if (redraw_menu) {
|
||||
getyx(list, old_y, old_x);
|
||||
wclear(list);
|
||||
|
||||
/*
|
||||
* Re-draw a box around the list items. It is required
|
||||
* if amount of list items is smaller than height of listbox.
|
||||
* Otherwise un-redrawn field will be filled with default
|
||||
* screen attributes instead of dialog attributes.
|
||||
*/
|
||||
draw_box(dialog, box_y, box_x, list_height + 2, list_width + 2, menubox_border_attr, menubox_attr);
|
||||
|
||||
for (i = 0; i < max_choice; i++)
|
||||
print_item(list, items[(scroll + i) * 3], items[(scroll + i) * 3 + 1], status[scroll + i], i, i == choice, DREF(ditems, scroll + i), list_width, item_x, check_x);
|
||||
print_arrows(dialog, scroll, list_height, item_no, box_x, box_y, check_x + 4, cur_x, cur_y);
|
||||
|
Loading…
Reference in New Issue
Block a user