diff options
author | Eirik Aavitsland <eirik.aavitsland@qt.io> | 2018-10-09 16:42:03 +0200 |
---|---|---|
committer | Eirik Aavitsland <eirik.aavitsland@qt.io> | 2018-11-09 08:41:33 +0000 |
commit | 7a4ebf1b714956c7a8b676d83ea8461b2cdc0db3 (patch) | |
tree | 1d420d49aa726a968f6222e1e66aea8bc8a153e2 /src/gui/painting/qstroker_p.h | |
parent | 757d4b85a91643c289d3224082b48b4835868104 (diff) |
Painting: Fix capping of polylines having endpoint == startpoint
A polyline should not be closed like a polygon, even if the start and
end points are identical. But when the primitive was broken down to a
vector path, the stroker no longer had available the information that
it should be open, and so would join the start and end points.
Fixes: QTBUG-65393
Change-Id: I0a566f91cf1a2843fda662b393dbae78c3c38f06
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/gui/painting/qstroker_p.h')
-rw-r--r-- | src/gui/painting/qstroker_p.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gui/painting/qstroker_p.h b/src/gui/painting/qstroker_p.h index 1a7c184e1a..722a0904f3 100644 --- a/src/gui/painting/qstroker_p.h +++ b/src/gui/painting/qstroker_p.h @@ -222,6 +222,9 @@ public: void setMiterLimit(qfixed length) { m_miterLimit = length; } qfixed miterLimit() const { return m_miterLimit; } + void setForceOpen(bool state) { m_forceOpen = state; } + bool forceOpen() { return m_forceOpen; } + void joinPoints(qfixed x, qfixed y, const QLineF &nextLine, LineJoinMode join); inline void emitMoveTo(qfixed x, qfixed y); inline void emitLineTo(qfixed x, qfixed y); @@ -247,6 +250,8 @@ protected: qfixed m_back2X; qfixed m_back2Y; + + bool m_forceOpen; }; class Q_GUI_EXPORT QDashStroker : public QStrokerOps |