From 62c5bc791ba90cd814dc5dc94feca9cd5d6a6709 Mon Sep 17 00:00:00 2001 From: ache Date: Tue, 15 Nov 1994 12:42:14 +0000 Subject: Fix bug: only one second-level shadow drawed --- gnu/lib/libdialog/kernel.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'gnu/lib/libdialog/kernel.c') 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); -- cgit v1.1