chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
   |   96 +++++-----
 chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt  
           |   64 +++---
 
chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
          |   80 ++++----
 
chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
    |   76 +++----
 
chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
 |   76 +++----
 chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt 
           |   76 +++----
 
chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
         |   80 ++++----
 chart2/source/view/charttypes/BarChart.cxx                                     
           |   11 -
 chart2/source/view/inc/ShapeFactory.hxx                                        
           |    3 
 chart2/source/view/main/ShapeFactory.cxx                                       
           |   11 -
 sw/qa/extras/layout/layout2.cxx                                                
           |    7 
 11 files changed, 298 insertions(+), 282 deletions(-)

New commits:
commit 302b44125aa0c1d5216f986ecf8e341cd6e57418
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Thu Dec 9 11:45:36 2021 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Thu Jan 6 12:20:22 2022 +0100

    use background XShapeGroup for bar-chart area
    
    which means we don't have to set the Z-order, which is expensive for
    large charts.
    Shaves 5% off the load time
    
    Change-Id: I8c73df6ddc17a3cfedaa18dbe8ec3aeb768e3e42
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126607
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
index b3192a728377..f9ec3b65a2f8 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/column_chart_small_spacing.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
-13522
+3698
 // aColumnOrBarPosition.Y
-4147
+4414
 // aColumnOrBarSize.Height
-3202
+2935
 // aColumnOrBarSize.Width
-1169
+1170
 // aColumnOrBarTransformation
-1169;0;13522;0;3202;4147;0;0;1
+1170;0;3698;0;2935;4414;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 8610
@@ -29,17 +29,17 @@
 1170
 // aColumnOrBarTransformation
 1170;0;8610;0;5403;1946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
-3698
+13522
 // aColumnOrBarPosition.Y
-4414
+4147
 // aColumnOrBarSize.Height
-2935
+3202
 // aColumnOrBarSize.Width
-1170
+1169
 // aColumnOrBarTransformation
-1170;0;3698;0;2935;4414;0;0;1
+1169;0;13522;0;3202;4147;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
-14691
+4868
 // aColumnOrBarPosition.Y
-3747
+5247
 // aColumnOrBarSize.Height
-3602
+2102
 // aColumnOrBarSize.Width
-1170
+1169
 // aColumnOrBarTransformation
-1170;0;14691;0;3602;3747;0;0;1
+1169;0;4868;0;2102;5247;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 9780
@@ -69,17 +69,17 @@
 1169
 // aColumnOrBarTransformation
 1169;0;9780;0;3002;4347;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
-4868
+14691
 // aColumnOrBarPosition.Y
-5247
+3747
 // aColumnOrBarSize.Height
-2102
+3602
 // aColumnOrBarSize.Width
-1169
+1170
 // aColumnOrBarTransformation
-1169;0;4868;0;2102;5247;0;0;1
+1170;0;14691;0;3602;3747;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 3
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
-15861
+6037
 // aColumnOrBarPosition.Y
-5214
+6281
 // aColumnOrBarSize.Height
-2135
+1068
 // aColumnOrBarSize.Width
-1169
+1170
 // aColumnOrBarTransformation
-1169;0;15861;0;2135;5214;0;0;1
+1170;0;6037;0;1068;6281;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 10949
@@ -109,17 +109,17 @@
 1169
 // aColumnOrBarTransformation
 1169;0;10949;0;2935;4414;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
-6037
+15861
 // aColumnOrBarPosition.Y
-6281
+5214
 // aColumnOrBarSize.Height
-1068
+2135
 // aColumnOrBarSize.Width
-1170
+1169
 // aColumnOrBarTransformation
-1170;0;6037;0;1068;6281;0;0;1
+1169;0;15861;0;2135;5214;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 2
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
-17030
+7207
 // aColumnOrBarPosition.Y
-2335
+5677
 // aColumnOrBarSize.Height
-5014
+1672
 // aColumnOrBarSize.Width
-1170
+1169
 // aColumnOrBarTransformation
-1170;0;17030;0;5014;2335;0;0;1
+1169;0;7207;0;1672;5677;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 12118
@@ -149,14 +149,14 @@
 1170
 // aColumnOrBarTransformation
 1170;0;12118;0;3343;4006;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
-7207
+17030
 // aColumnOrBarPosition.Y
-5677
+2335
 // aColumnOrBarSize.Height
-1672
+5014
 // aColumnOrBarSize.Width
-1169
+1170
 // aColumnOrBarTransformation
-1169;0;7207;0;1672;5677;0;0;1
+1170;0;17030;0;5014;2335;0;0;1
diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt
index 7828d7907d69..47a0a9b0ac21 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_bar_chart.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-2709
+6712
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-7071
+6482
 // aColumnOrBarTransformation
-7071;0;3582;0;364;2709;0;0;1
+6482;0;3582;0;364;6712;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 3582
@@ -29,17 +29,17 @@
 11932
 // aColumnOrBarTransformation
 11932;0;3582;0;364;4710;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-6712
+2709
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-6482
+7071
 // aColumnOrBarTransformation
-6482;0;3582;0;364;6712;0;0;1
+7071;0;3582;0;364;2709;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-2345
+6348
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-7956
+4641
 // aColumnOrBarTransformation
-7956;0;3582;0;364;2345;0;0;1
+4641;0;3582;0;364;6348;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 3582
@@ -69,17 +69,17 @@
 6630
 // aColumnOrBarTransformation
 6630;0;3582;0;363;4347;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-6348
+2345
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-4641
+7956
 // aColumnOrBarTransformation
-4641;0;3582;0;364;6348;0;0;1
+7956;0;3582;0;364;2345;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-1981
+5984
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-4714
+2357
 // aColumnOrBarTransformation
-4714;0;3582;0;364;1981;0;0;1
+2357;0;3582;0;364;5984;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 3582
@@ -109,17 +109,17 @@
 6482
 // aColumnOrBarTransformation
 6482;0;3582;0;364;3983;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-5984
+1981
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-2357
+4714
 // aColumnOrBarTransformation
-2357;0;3582;0;364;5984;0;0;1
+4714;0;3582;0;364;1981;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-1617
+5620
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-11072
+3690
 // aColumnOrBarTransformation
-11072;0;3582;0;364;1617;0;0;1
+3690;0;3582;0;364;5620;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 3582
@@ -149,14 +149,14 @@
 7381
 // aColumnOrBarTransformation
 7381;0;3582;0;364;3619;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-5620
+1617
 // aColumnOrBarSize.Height
 364
 // aColumnOrBarSize.Width
-3690
+11072
 // aColumnOrBarTransformation
-3690;0;3582;0;364;5620;0;0;1
+11072;0;3582;0;364;1617;0;0;1
diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
index 3c4dad8c5aac..d3a964679852 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/normal_column_chart.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
-14433
+4359
 // aColumnOrBarPosition.Y
-4147
+4414
 // aColumnOrBarSize.Height
-3202
+2935
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;14433;0;3202;4147;0;0;1
+916;0;4359;0;2935;4414;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 9396
@@ -29,17 +29,17 @@
 916
 // aColumnOrBarTransformation
 916;0;9396;0;5403;1946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
-4359
+14433
 // aColumnOrBarPosition.Y
-4414
+4147
 // aColumnOrBarSize.Height
-2935
+3202
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;4359;0;2935;4414;0;0;1
+916;0;14433;0;3202;4147;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
-15349
+5275
 // aColumnOrBarPosition.Y
-3747
+5247
 // aColumnOrBarSize.Height
-3602
+2102
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;15349;0;3602;3747;0;0;1
+916;0;5275;0;2102;5247;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 10312
@@ -69,17 +69,17 @@
 916
 // aColumnOrBarTransformation
 916;0;10312;0;3002;4347;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
-5275
+15349
 // aColumnOrBarPosition.Y
-5247
+3747
 // aColumnOrBarSize.Height
-2102
+3602
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;5275;0;2102;5247;0;0;1
+916;0;15349;0;3602;3747;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
-16265
+6191
 // aColumnOrBarPosition.Y
-5214
+6281
 // aColumnOrBarSize.Height
-2135
+1068
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;16265;0;2135;5214;0;0;1
+916;0;6191;0;1068;6281;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 11228
@@ -109,17 +109,17 @@
 916
 // aColumnOrBarTransformation
 916;0;11228;0;2935;4414;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
-6191
+16265
 // aColumnOrBarPosition.Y
-6281
+5214
 // aColumnOrBarSize.Height
-1068
+2135
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;6191;0;1068;6281;0;0;1
+916;0;16265;0;2135;5214;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
-17181
+7107
 // aColumnOrBarPosition.Y
-2335
+5677
 // aColumnOrBarSize.Height
-5014
+1672
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;17181;0;5014;2335;0;0;1
+916;0;7107;0;1672;5677;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 12144
@@ -149,14 +149,14 @@
 916
 // aColumnOrBarTransformation
 916;0;12144;0;3343;4006;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
-7107
+17181
 // aColumnOrBarPosition.Y
-5677
+2335
 // aColumnOrBarSize.Height
-1672
+5014
 // aColumnOrBarSize.Width
 916
 // aColumnOrBarTransformation
-916;0;7107;0;1672;5677;0;0;1
+916;0;17181;0;5014;2335;0;0;1
diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
index 5fa9301b129f..1d53a339e405 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_bar_chart.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-1678
+5681
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-3381
+5562
 // aColumnOrBarTransformation
-3381;0;3582;0;1334;1678;0;0;1
+5562;0;3582;0;1334;5681;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 3582
@@ -29,17 +29,17 @@
 5422
 // aColumnOrBarTransformation
 5422;0;3582;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-5681
+1678
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-5562
+3381
 // aColumnOrBarTransformation
-5562;0;3582;0;1334;5681;0;0;1
+3381;0;3582;0;1334;1678;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
-6963
+9144
 // aColumnOrBarPosition.Y
-1678
+5681
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-3804
+3982
 // aColumnOrBarTransformation
-3804;0;6963;0;1334;1678;0;0;1
+3982;0;9144;0;1334;5681;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 9004
@@ -69,17 +69,17 @@
 3013
 // aColumnOrBarTransformation
 3013;0;9004;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
-9144
+6963
 // aColumnOrBarPosition.Y
-5681
+1678
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-3982
+3804
 // aColumnOrBarTransformation
-3982;0;9144;0;1334;5681;0;0;1
+3804;0;6963;0;1334;1678;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 255
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
-10767
+13126
 // aColumnOrBarPosition.Y
-1678
+5681
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-2255
+2023
 // aColumnOrBarTransformation
-2255;0;10767;0;1334;1678;0;0;1
+2023;0;13126;0;1334;5681;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 12017
@@ -109,17 +109,17 @@
 2945
 // aColumnOrBarTransformation
 2945;0;12017;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
-13126
+10767
 // aColumnOrBarPosition.Y
-5681
+1678
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-2023
+2255
 // aColumnOrBarTransformation
-2023;0;13126;0;1334;5681;0;0;1
+2255;0;10767;0;1334;1678;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
-13022
+15149
 // aColumnOrBarPosition.Y
-1678
+5681
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-5295
+3168
 // aColumnOrBarTransformation
-5295;0;13022;0;1334;1678;0;0;1
+3168;0;15149;0;1334;5681;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 14962
@@ -149,14 +149,14 @@
 3355
 // aColumnOrBarTransformation
 3355;0;14962;0;1335;3679;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
-15149
+13022
 // aColumnOrBarPosition.Y
-5681
+1678
 // aColumnOrBarSize.Height
 1334
 // aColumnOrBarSize.Width
-3168
+5295
 // aColumnOrBarTransformation
-3168;0;15149;0;1334;5681;0;0;1
+5295;0;13022;0;1334;1678;0;0;1
diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
index c183d4ea52d7..75ee4041785e 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/percent_stacked_column_chart.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-5971
+5082
 // aColumnOrBarSize.Height
-1378
+2267
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;1378;5971;0;0;1
+1965;0;5055;0;2267;5082;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -29,17 +29,17 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;2210;5139;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-5082
+5971
 // aColumnOrBarSize.Height
-2267
+1378
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;2267;5082;0;0;1
+1965;0;14878;0;1378;5971;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-4421
+3459
 // aColumnOrBarSize.Height
-1550
+1623
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;1550;4421;0;0;1
+1965;0;5055;0;1623;3459;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -69,17 +69,17 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1227;3912;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-3459
+4421
 // aColumnOrBarSize.Height
-1623
+1550
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;1623;3459;0;0;1
+1965;0;14878;0;1550;4421;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 3
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-3502
+2635
 // aColumnOrBarSize.Height
-919
+824
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;919;3502;0;0;1
+1965;0;5055;0;824;2635;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -109,17 +109,17 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1201;2711;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-2635
+3502
 // aColumnOrBarSize.Height
-824
+919
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;824;2635;0;0;1
+1965;0;14878;0;919;3502;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 2
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
 1345
 // aColumnOrBarSize.Height
-2157
+1290
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;2157;1345;0;0;1
+1965;0;5055;0;1290;1345;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -149,14 +149,14 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1366;1345;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
 1345
 // aColumnOrBarSize.Height
-1290
+2157
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;1290;1345;0;0;1
+1965;0;14878;0;2157;1345;0;0;1
diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
index 228bc26b81cb..f9bf6a20b1d8 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_bar_chart.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-1945
+5948
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-2828
+2592
 // aColumnOrBarTransformation
-2828;0;3582;0;800;1945;0;0;1
+2592;0;3582;0;800;5948;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 3582
@@ -29,17 +29,17 @@
 4773
 // aColumnOrBarTransformation
 4773;0;3582;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
 3582
 // aColumnOrBarPosition.Y
-5948
+1945
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-2592
+2828
 // aColumnOrBarTransformation
-2592;0;3582;0;800;5948;0;0;1
+2828;0;3582;0;800;1945;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
-6410
+6174
 // aColumnOrBarPosition.Y
-1945
+5948
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-3182
+1857
 // aColumnOrBarTransformation
-3182;0;6410;0;800;1945;0;0;1
+1857;0;6174;0;800;5948;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 8355
@@ -69,17 +69,17 @@
 2652
 // aColumnOrBarTransformation
 2652;0;8355;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
-6174
+6410
 // aColumnOrBarPosition.Y
-5948
+1945
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-1857
+3182
 // aColumnOrBarTransformation
-1857;0;6174;0;800;5948;0;0;1
+3182;0;6410;0;800;1945;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 255
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
-9592
+8031
 // aColumnOrBarPosition.Y
-1945
+5948
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-1886
+943
 // aColumnOrBarTransformation
-1886;0;9592;0;800;1945;0;0;1
+943;0;8031;0;800;5948;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 11007
@@ -109,17 +109,17 @@
 2593
 // aColumnOrBarTransformation
 2593;0;11007;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
-8031
+9592
 // aColumnOrBarPosition.Y
-5948
+1945
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-943
+1886
 // aColumnOrBarTransformation
-943;0;8031;0;800;5948;0;0;1
+1886;0;9592;0;800;1945;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
-11478
+8974
 // aColumnOrBarPosition.Y
-1945
+5948
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-4429
+1476
 // aColumnOrBarTransformation
-4429;0;11478;0;800;1945;0;0;1
+1476;0;8974;0;800;5948;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 13600
@@ -149,14 +149,14 @@
 2952
 // aColumnOrBarTransformation
 2952;0;13600;0;801;3946;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
-8974
+11478
 // aColumnOrBarPosition.Y
-5948
+1945
 // aColumnOrBarSize.Height
 800
 // aColumnOrBarSize.Width
-1476
+4429
 // aColumnOrBarTransformation
-1476;0;8974;0;800;5948;0;0;1
+4429;0;11478;0;800;1945;0;0;1
diff --git 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
index 0326452589e0..dd34a4958480 100644
--- 
a/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
+++ 
b/chart2/qa/extras/chart2dump/reference/columnbarcharttest/stacked_column_chart.txt
@@ -7,17 +7,17 @@
 1
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 16711807
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-6196
+6292
 // aColumnOrBarSize.Height
-1153
+1057
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;1153;6196;0;0;1
+1965;0;5055;0;1057;6292;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -29,17 +29,17 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1945;5404;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=0:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-6292
+6196
 // aColumnOrBarSize.Height
-1057
+1153
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;1057;6292;0;0;1
+1965;0;14878;0;1153;6196;0;0;1
 /// Series 1 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -47,17 +47,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-4899
+5536
 // aColumnOrBarSize.Height
-1297
+756
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;1297;4899;0;0;1
+1965;0;5055;0;756;5536;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -69,17 +69,17 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1081;4323;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-5536
+4899
 // aColumnOrBarSize.Height
-756
+1297
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;756;5536;0;0;1
+1965;0;14878;0;1297;4899;0;0;1
 /// Series 2 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -87,17 +87,17 @@
 4
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-4131
+5151
 // aColumnOrBarSize.Height
-768
+385
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;768;4131;0;0;1
+1965;0;5055;0;385;5151;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -109,17 +109,17 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1057;3266;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-5151
+4131
 // aColumnOrBarSize.Height
-385
+768
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;385;5151;0;0;1
+1965;0;14878;0;768;4131;0;0;1
 /// Series 3 ColumnsOrBars
 // nColumnOrBarCountInSeries
 3
@@ -127,17 +127,17 @@
 2
 // static_cast<sal_Int32>(aSeriesColumnOrBarFillColor)
 10079487
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
 // aColumnOrBarPosition.X
-14878
+5055
 // aColumnOrBarPosition.Y
-2326
+4550
 // aColumnOrBarSize.Height
-1805
+601
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;14878;0;1805;2326;0;0;1
+1965;0;5055;0;601;4550;0;0;1
 /// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
 // aColumnOrBarPosition.X
 9967
@@ -149,14 +149,14 @@
 1964
 // aColumnOrBarTransformation
 1964;0;9967;0;1203;2063;0;0;1
-/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
 // aColumnOrBarPosition.X
-5055
+14878
 // aColumnOrBarPosition.Y
-4550
+2326
 // aColumnOrBarSize.Height
-601
+1805
 // aColumnOrBarSize.Width
 1965
 // aColumnOrBarTransformation
-1965;0;5055;0;601;4550;0;0;1
+1965;0;14878;0;1805;2326;0;0;1
diff --git a/chart2/source/view/charttypes/BarChart.cxx 
b/chart2/source/view/charttypes/BarChart.cxx
index a06303a310b3..3709476daae0 100644
--- a/chart2/source/view/charttypes/BarChart.cxx
+++ b/chart2/source/view/charttypes/BarChart.cxx
@@ -620,10 +620,17 @@ void BarChart::createShapes()
                         bDrawConnectionLinesInited = true;
                     }
 
+                    // Use another XShapes for background, so we can avoid 
needing to set the Z-order on all of them,
+                    // which is expensive in bulk.
                     rtl::Reference<SvxShapeGroupAnyD> 
xSeriesGroupShape_Shapes(getSeriesGroupShape(pSeries.get(), xSeriesTarget));
-                    // Suspend setting rects dirty for the duration of this 
call
+                    rtl::Reference<SvxShapeGroupAnyD> 
xSeriesBackgroundShape_Shapes(getSeriesGroupShape(pSeries.get(), 
xSeriesTarget));
                     aShapeSet.insert(xSeriesGroupShape_Shapes);
+                    aShapeSet.insert(xSeriesBackgroundShape_Shapes);
+                    // Suspend setting rects dirty for the duration of this 
call
                     E3dScene* pScene = 
dynamic_cast<E3dScene*>(xSeriesGroupShape_Shapes->GetSdrObject());
+                    if (pScene)
+                        pScene->SuspendReportingDirtyRects();
+                    pScene = 
dynamic_cast<E3dScene*>(xSeriesBackgroundShape_Shapes->GetSdrObject());
                     if (pScene)
                         pScene->SuspendReportingDirtyRects();
 
@@ -863,7 +870,7 @@ void BarChart::createShapes()
                                     if(!std::isnan(nPropVal))
                                         xFillColor = 
static_cast<sal_Int32>(nPropVal);
                                 }
-                                SdrPathObj* pShape = 
ShapeFactory::createArea2D( xSeriesGroupShape_Shapes, aPoly );
+                                SdrPathObj* pShape = 
ShapeFactory::createArea2D( xSeriesGroupShape_Shapes, aPoly, 
/*bSetZOrderToZero*/false );
                                 
PropertyMapper::setPropertyNameMapForFilledSeriesProperties(pShape, 
xDataPointProperties, xFillColor);
 
                                 //set name/classified ObjectID (CID)
diff --git a/chart2/source/view/inc/ShapeFactory.hxx 
b/chart2/source/view/inc/ShapeFactory.hxx
index e326b771b2e4..f198f074f519 100644
--- a/chart2/source/view/inc/ShapeFactory.hxx
+++ b/chart2/source/view/inc/ShapeFactory.hxx
@@ -157,7 +157,8 @@ public:
 
     static SdrPathObj*
         createArea2D( const rtl::Reference<SvxShapeGroupAnyD>& xTarget
-                    , const css::drawing::PolyPolygonShape3D& rPolyPolygon);
+                    , const css::drawing::PolyPolygonShape3D& rPolyPolygon
+                    , bool bSetZOrderToZero = true);
 
     static rtl::Reference<SvxShapePolyPolygon>
         createSymbol2D( const rtl::Reference<SvxShapeGroupAnyD>& xTarget
diff --git a/chart2/source/view/main/ShapeFactory.cxx 
b/chart2/source/view/main/ShapeFactory.cxx
index efc7f0d90787..7c3210cd1dc0 100644
--- a/chart2/source/view/main/ShapeFactory.cxx
+++ b/chart2/source/view/main/ShapeFactory.cxx
@@ -1081,18 +1081,21 @@ rtl::Reference<Svx3DExtrudeObject>
     return xShape;
 }
 
-
 SdrPathObj*
         ShapeFactory::createArea2D( const rtl::Reference<SvxShapeGroupAnyD>& 
xTarget
-                    , const drawing::PolyPolygonShape3D& rPolyPolygon )
+                    , const drawing::PolyPolygonShape3D& rPolyPolygon
+                    , bool bSetZOrderToZero )
 {
     if( !xTarget.is() )
         return nullptr;
 
     //create shape
     SdrPathObj* pPath = new 
SdrPathObj(xTarget->GetSdrObject()->getSdrModelFromSdrObject(), OBJ_POLY);
-    // insert at ZOrder 0, an area should always be behind other shapes
-    xTarget->GetSdrObject()->GetSubList()->InsertObject(pPath, 0);
+    if (bSetZOrderToZero)
+        // insert at ZOrder 0, an area should always be behind other shapes
+        xTarget->GetSdrObject()->GetSubList()->InsertObject(pPath, 0);
+    else
+        xTarget->GetSdrObject()->GetSubList()->InsertObject(pPath);
 
     //set properties
     try
diff --git a/sw/qa/extras/layout/layout2.cxx b/sw/qa/extras/layout/layout2.cxx
index f14176251780..eea736f2bdef 100644
--- a/sw/qa/extras/layout/layout2.cxx
+++ b/sw/qa/extras/layout/layout2.cxx
@@ -657,6 +657,11 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter2, testTdf133005)
     xmlDocUniquePtr pXmlDoc = dumpAndParse(dumper, *xMetaFile);
     CPPUNIT_ASSERT(pXmlDoc);
 
+    {
+        SvFileStream aStream("/home/noel/libo/noel1.dump", StreamMode::WRITE | 
StreamMode::TRUNC);
+        dumper.dump(*xMetaFile, aStream);
+        aStream.Close();
+    }
     sal_Int32 nXChartWall = getXPath(pXmlDoc,
                                      
"/metafile/push[1]/push[1]/push[1]/push[3]/push[1]/push[1]/"
                                      "push[1]/push[1]/polyline[1]/point[2]",
@@ -664,7 +669,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter2, testTdf133005)
                                 .toInt32();
     sal_Int32 nXColumn = getXPath(pXmlDoc,
                                   
"/metafile/push[1]/push[1]/push[1]/push[3]/push[1]/push[1]/"
-                                  
"push[1]/push[42]/polypolygon/polygon/point[1]",
+                                  
"push[1]/push[41]/polypolygon/polygon/point[1]",
                                   "x")
                              .toInt32();
 

Reply via email to