summaryrefslogtreecommitdiffstats
path: root/gnu/lib/libdialog
diff options
context:
space:
mode:
authoreric <eric@FreeBSD.org>2001-07-26 05:35:19 +0000
committereric <eric@FreeBSD.org>2001-07-26 05:35:19 +0000
commit145593b99f383ca847ea3b56650a1d24761c4f8f (patch)
treebeac91fd030d7914b5446418ded90d5f185fc89a /gnu/lib/libdialog
parent396c6c947b8f26b82bfabee2c6dcdbdf1cc4ef4a (diff)
downloadFreeBSD-src-145593b99f383ca847ea3b56650a1d24761c4f8f.zip
FreeBSD-src-145593b99f383ca847ea3b56650a1d24761c4f8f.tar.gz
Properly update cursor position when the list is scrolled.
Diffstat (limited to 'gnu/lib/libdialog')
-rw-r--r--gnu/lib/libdialog/checklist.c10
-rw-r--r--gnu/lib/libdialog/radiolist.c10
2 files changed, 12 insertions, 8 deletions
diff --git a/gnu/lib/libdialog/checklist.c b/gnu/lib/libdialog/checklist.c
index e28a79c..188b542 100644
--- a/gnu/lib/libdialog/checklist.c
+++ b/gnu/lib/libdialog/checklist.c
@@ -300,9 +300,10 @@ draw:
scroll--;
print_item(list, items[scroll*3], items[scroll*3 + 1], status[scroll], 0,
TRUE, DREF(ditems, scroll), list_width, item_x, check_x);
- wnoutrefresh(list);
print_arrows(dialog, scroll, list_height, item_no, box_x, box_y, check_x + 4, cur_x, cur_y);
- wrefresh(dialog);
+ wmove(list, choice, check_x+1);
+ wnoutrefresh(dialog);
+ wrefresh(list);
}
continue; /* wait for another key press */
}
@@ -329,9 +330,10 @@ draw:
items[(scroll + max_choice - 1) * 3 + 1],
status[scroll + max_choice - 1], max_choice - 1, TRUE,
DREF(ditems, scroll + max_choice - 1), list_width, item_x, check_x);
- wnoutrefresh(list);
print_arrows(dialog, scroll, list_height, item_no, box_x, box_y, check_x + 4, cur_x, cur_y);
- wrefresh(dialog);
+ wmove(list, choice, check_x+1);
+ wnoutrefresh(dialog);
+ wrefresh(list);
}
continue; /* wait for another key press */
}
diff --git a/gnu/lib/libdialog/radiolist.c b/gnu/lib/libdialog/radiolist.c
index e4e9372..5166cce 100644
--- a/gnu/lib/libdialog/radiolist.c
+++ b/gnu/lib/libdialog/radiolist.c
@@ -312,9 +312,10 @@ draw:
scroll--;
print_item(list, items[scroll*3], items[scroll*3 + 1], status[scroll], 0,
TRUE, DREF(ditems, scroll));
- wnoutrefresh(list);
print_arrows(dialog, scroll, list_height, item_no, box_x, box_y, check_x + 4, cur_x, cur_y);
- wrefresh(dialog);
+ wmove(list, choice, check_x+1);
+ wnoutrefresh(dialog);
+ wrefresh(list);
}
continue; /* wait for another key press */
}
@@ -341,9 +342,10 @@ draw:
items[(scroll + max_choice - 1) * 3 + 1],
status[scroll + max_choice - 1], max_choice - 1,
TRUE, DREF(ditems, scroll + max_choice - 1));
- wnoutrefresh(list);
print_arrows(dialog, scroll, list_height, item_no, box_x, box_y, check_x + 4, cur_x, cur_y);
- wrefresh(dialog);
+ wmove(list, choice, check_x+1);
+ wnoutrefresh(dialog);
+ wrefresh(list);
}
continue; /* wait for another key press */
}
OpenPOWER on IntegriCloud