From cd0b87027a8d828a88c9f518ad65dfe3f85997e0 Mon Sep 17 00:00:00 2001 From: ehouse Date: Sun, 14 Nov 2004 00:19:13 +0000 Subject: [PATCH] draw hint rect segments a line at a time to avoid overwriting blank-marking erasures. Just doing the erasing after doesn't work because it's really a circle and too much shows up. --- palm/palmdraw.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/palm/palmdraw.c b/palm/palmdraw.c index 7b39f2d8b..682e7e2a0 100644 --- a/palm/palmdraw.c +++ b/palm/palmdraw.c @@ -230,23 +230,28 @@ static void palmDrawHintBorders( XP_Rect* rect, HintAtts hintAtts ) { XP_Rect frame = *rect; + --frame.width; + --frame.height; if ( (hintAtts & HINT_BORDER_LEFT) != 0 ) { - ++frame.left; - --frame.width; + WinDrawLine( frame.left, frame.top, + frame.left, frame.top + frame.height ); } if ( (hintAtts & HINT_BORDER_TOP) != 0 ) { - ++frame.top; - --frame.height; + WinDrawLine( frame.left, frame.top, + frame.left + frame.width, frame.top ); } if ( (hintAtts & HINT_BORDER_RIGHT) != 0 ) { - --frame.width; + WinDrawLine( frame.left + frame.width, frame.top, + frame.left + frame.width, + frame.top + frame.height ); + } if ( (hintAtts & HINT_BORDER_BOTTOM) != 0 ) { - --frame.height; + WinDrawLine( frame.left, frame.top + frame.height, + frame.left + frame.width, + frame.top + frame.height ); } - - WinDrawRectangleFrame( rectangleFrame, (RectangleType*)&frame ); } /* palmDrawHintBorders */ static XP_Bool