diff options
author | jkh <jkh@FreeBSD.org> | 1996-04-20 01:56:06 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1996-04-20 01:56:06 +0000 |
commit | 3530e10a1a8aa576a4aea7aa2a07abaaee70f65e (patch) | |
tree | 419f18c09249b8e3eeb1e180129cc40414a328d6 /gnu/lib/libdialog | |
parent | e1617c234c63e37eeb39e6e512a1172b0ffa0fdb (diff) | |
download | FreeBSD-src-3530e10a1a8aa576a4aea7aa2a07abaaee70f65e.zip FreeBSD-src-3530e10a1a8aa576a4aea7aa2a07abaaee70f65e.tar.gz |
Another bug fix for the DITEM_REDRAW case.
Diffstat (limited to 'gnu/lib/libdialog')
-rw-r--r-- | gnu/lib/libdialog/checklist.c | 4 | ||||
-rw-r--r-- | gnu/lib/libdialog/radiolist.c | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/gnu/lib/libdialog/checklist.c b/gnu/lib/libdialog/checklist.c index 4be3282..1090293 100644 --- a/gnu/lib/libdialog/checklist.c +++ b/gnu/lib/libdialog/checklist.c @@ -316,9 +316,9 @@ draw: save = dupwin(newscr); st = ditems[scroll + choice].fire(&ditems[scroll + choice]); if (st & DITEM_REDRAW) { + for (i = 0; i < item_no; i++) + status[i] = ditems[i].checked ? ditems[i].checked(&ditems[i]) : FALSE; for (i = 0; i < max_choice; i++) { - status[scroll + i] = ditems[scroll + i].checked ? - ditems[scroll + i].checked(&ditems[scroll + i]) : FALSE; print_item(list, items[(scroll + i) * 3], items[(scroll + i) * 3 + 1], status[scroll + i], i, i == choice, DREF(ditems, scroll + i)); } diff --git a/gnu/lib/libdialog/radiolist.c b/gnu/lib/libdialog/radiolist.c index daa8881..970953b 100644 --- a/gnu/lib/libdialog/radiolist.c +++ b/gnu/lib/libdialog/radiolist.c @@ -322,9 +322,10 @@ draw: save = dupwin(newscr); st = ditems[scroll + choice].fire(&ditems[scroll + choice]); if (st & DITEM_REDRAW) { + for (i = 0; i < item_no; i++) + status[i] = ditems[i].checked ? ditems[i].checked(&ditems[i]) : FALSE; + for (i = 0; i < max_choice; i++) { - status[scroll + i] = ditems[scroll + i].checked ? - ditems[scroll + i].checked(&ditems[scroll + i]) : FALSE; print_item(list, items[(scroll + i) * 3], items[(scroll + i) * 3 + 1], status[scroll + i], i, i == choice, DREF(ditems, scroll + i)); |