From a748b927a52b532a44e579901ce9890f953ef49c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Wed, 8 Aug 2007 18:30:28 +0000 Subject: [PATCH] * make sure that the pattern used for line arrays is B_SOLID_HIGH and that the previous pattern is restored after execution git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21853 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/drawing/DrawingEngine.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/servers/app/drawing/DrawingEngine.cpp b/src/servers/app/drawing/DrawingEngine.cpp index 1a7a248909..004e00a374 100644 --- a/src/servers/app/drawing/DrawingEngine.cpp +++ b/src/servers/app/drawing/DrawingEngine.cpp @@ -1002,8 +1002,13 @@ DrawingEngine::StrokeLineArray(int32 numLines, data = (const LineArrayData *)&(linedata[0]); + // store current graphics state, we mess with the + // high color and pattern... rgb_color oldColor = fPainter->HighColor(); + struct pattern pattern = fPainter->Pattern(); + fPainter->SetHighColor(data->color); + fPainter->SetPattern(B_SOLID_HIGH); fPainter->StrokeLine(data->pt1, data->pt2); for (int32 i = 1; i < numLines; i++) { @@ -1012,8 +1017,9 @@ DrawingEngine::StrokeLineArray(int32 numLines, fPainter->StrokeLine(data->pt1, data->pt2); } - // restore correct drawing state highcolor + // restore correct drawing state highcolor and pattern fPainter->SetHighColor(oldColor); + fPainter->SetPattern(pattern); fGraphicsCard->Invalidate(touched); if (cursorTouched)