summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorEirik Aavitsland <eirik.aavitsland@qt.io>2020-03-27 09:41:03 +0100
committerEirik Aavitsland <eirik.aavitsland@qt.io>2020-03-27 12:31:01 +0100
commit533f7d7ca328e81804c8f52818f9d39172694f94 (patch)
tree96d6530c27ef84f92a3364548858273b209507ca /tests/auto
parent0613bf5d160e79476435da54f2cad2676de4a558 (diff)
Raster painting: fix dashing for separate lines
When drawing multiple distinct (unconnected) lines (e.g. from QPainter::drawLines() or a QPainterPath with alternating movetos/linetos), the dash pattern should not continue from one to the next, as it should when drawing a connected line (e.g. polyline). Both the cosmetic stroker and the full stroker does it right, but the fast rasterizing codepath got it wrong. Fixes: QTBUG-83048 Change-Id: I3d090f7121726755a0e53cb66b99a5563ac0e1c0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/other/lancelot/scripts/linedashes.qps40
1 files changed, 39 insertions, 1 deletions
diff --git a/tests/auto/other/lancelot/scripts/linedashes.qps b/tests/auto/other/lancelot/scripts/linedashes.qps
index ee7d18b156..78c791e68b 100644
--- a/tests/auto/other/lancelot/scripts/linedashes.qps
+++ b/tests/auto/other/lancelot/scripts/linedashes.qps
@@ -91,4 +91,42 @@ translate 100 0
repeat_block draw_lines
setPen 0xffff0000 0 dashline squarecap
translate 100 0
-repeat_block draw_lines \ No newline at end of file
+repeat_block draw_lines
+
+path_moveTo mypath 10 10
+path_lineTo mypath 87 10
+path_moveTo mypath 10 30
+path_lineTo mypath 87 30
+path_moveTo mypath 10 50
+path_lineTo mypath 87 50
+
+resetMatrix
+translate 0 150
+
+begin_block distinctLines
+
+setPen black 0 SolidLine SquareCap
+pen_setDashPattern [ 3 3 ]
+drawPath mypath
+
+translate 100 0
+setPen black 5 SolidLine SquareCap
+pen_setDashPattern [ 3 3 ]
+drawPath mypath
+
+translate 100 0
+setPen black 0 SolidLine RoundCap
+pen_setDashPattern [ 3 3 ]
+drawPath mypath
+
+translate 100 0
+setPen black 5 SolidLine RoundCap
+pen_setDashPattern [ 3 3 ]
+drawPath mypath
+
+end_block distinctLines
+
+resetMatrix
+translate 0 220
+setRenderHint Antialiasing true
+repeat_block distinctLines