summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar@trolltech.com>2009-07-22 14:26:28 (GMT)
committerGunnar Sletta <gunnar@trolltech.com>2009-07-22 14:32:54 (GMT)
commit9f176a9953e42ae08aaed5fa92ed55bbc8526142 (patch)
treeba7b00be00e4e6158d4c224f7e701093b24aa2c0 /src/gui
parent1223a21a737e9fded46f2c761532bf535fb943b1 (diff)
downloadQt-9f176a9953e42ae08aaed5fa92ed55bbc8526142.zip
Qt-9f176a9953e42ae08aaed5fa92ed55bbc8526142.tar.gz
Qt-9f176a9953e42ae08aaed5fa92ed55bbc8526142.tar.bz2
Fix table borders in multiline tables when printing to PostScript.
I'm not all to happy with this fix, but its the best that one can acheive given the current design. The problem is that QPdfBaseEngine sets a number of states as part of updateState(), but only when we are playing back through the alpha engine. These states are used in some draw functions, also when we are recording in the alpha engine. This leads to the states and their checks being out of sync. So to follow the existing pattern in the code we need to not touch d-> vars prior to a check to usesAlphaEngine. Reviewed-By: Eskil
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/painting/qpdf.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gui/painting/qpdf.cpp b/src/gui/painting/qpdf.cpp
index 2017fdd..8a991e3 100644
--- a/src/gui/painting/qpdf.cpp
+++ b/src/gui/painting/qpdf.cpp
@@ -964,8 +964,7 @@ QPdfBaseEngine::QPdfBaseEngine(QPdfBaseEnginePrivate &dd, PaintEngineFeatures f)
void QPdfBaseEngine::drawPoints (const QPointF *points, int pointCount)
{
- Q_D(QPdfBaseEngine);
- if (!points || !d->hasPen)
+ if (!points)
return;
QPainterPath p;
@@ -995,6 +994,12 @@ void QPdfBaseEngine::drawRects (const QRectF *rects, int rectCount)
return;
Q_D(QPdfBaseEngine);
+ if (d->useAlphaEngine) {
+ QAlphaPaintEngine::drawRects(rects, rectCount);
+ if (!continueCall())
+ return;
+ }
+
if (d->clipEnabled && d->allClipped)
return;
if (!d->hasPen && !d->hasBrush)