summaryrefslogtreecommitdiffstats
path: root/gnu/lib/libdialog/kernel.c
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>1994-11-15 12:42:14 +0000
committerache <ache@FreeBSD.org>1994-11-15 12:42:14 +0000
commit62c5bc791ba90cd814dc5dc94feca9cd5d6a6709 (patch)
treecaadeb75a926746ed991c8613f5dd6a3b0e04105 /gnu/lib/libdialog/kernel.c
parentb268748ec9f3842bc43cba0396340a623f1d46b9 (diff)
downloadFreeBSD-src-62c5bc791ba90cd814dc5dc94feca9cd5d6a6709.zip
FreeBSD-src-62c5bc791ba90cd814dc5dc94feca9cd5d6a6709.tar.gz
Fix bug: only one second-level shadow drawed
Diffstat (limited to 'gnu/lib/libdialog/kernel.c')
-rw-r--r--gnu/lib/libdialog/kernel.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/gnu/lib/libdialog/kernel.c b/gnu/lib/libdialog/kernel.c
index bdaa87f..2cb7c8f 100644
--- a/gnu/lib/libdialog/kernel.c
+++ b/gnu/lib/libdialog/kernel.c
@@ -378,11 +378,27 @@ void draw_shadow(WINDOW *win, int y, int x, int height, int width)
int i;
if (has_colors()) { /* Whether terminal supports color? */
+
+ /* small touchwin */
+ wattrset(win, A_NORMAL);
+ wmove(win, y + height, x + 2);
+ for (i = 0; i < width; i++)
+ waddch(win, winch(win) & A_CHARTEXT);
+
wattrset(win, shadow_attr);
wmove(win, y + height, x + 2);
for (i = 0; i < width; i++)
waddch(win, winch(win) & A_CHARTEXT);
+
for (i = y + 1; i < y + height + 1; i++) {
+
+ /* small touchwin */
+ wattrset(win, A_NORMAL);
+ wmove(win, i, x + width);
+ waddch(win, winch(win) & A_CHARTEXT);
+ waddch(win, winch(win) & A_CHARTEXT);
+
+ wattrset(win, shadow_attr);
wmove(win, i, x + width);
waddch(win, winch(win) & A_CHARTEXT);
waddch(win, winch(win) & A_CHARTEXT);
OpenPOWER on IntegriCloud