diff options
Diffstat (limited to 'sc/source/ui/view/output.cxx')
-rw-r--r-- | sc/source/ui/view/output.cxx | 86 |
1 files changed, 49 insertions, 37 deletions
diff --git a/sc/source/ui/view/output.cxx b/sc/source/ui/view/output.cxx index a1d4db5e12e5..8c656ca45bb7 100644 --- a/sc/source/ui/view/output.cxx +++ b/sc/source/ui/view/output.cxx @@ -1458,7 +1458,7 @@ void ScOutputData::DrawFrame(vcl::RenderContext& rRenderContext) { size_t nRow2 = nRow1; while( (nRow2 + 1 <= nLastRow) && pRowInfo[ nRow2 + 1 ].bChanged ) ++nRow2; - rArray.DrawRange( pProcessor.get(), nFirstCol, nRow1, nLastCol, nRow2, pForceColor ); + rArray.DrawRange( *pProcessor.get(), nFirstCol, nRow1, nLastCol, nRow2, pForceColor ); nRow1 = nRow2 + 1; } } @@ -1759,58 +1759,70 @@ void ScOutputData::DrawRotatedFrame(vcl::RenderContext& rRenderContext, const Co if (aTopLine.Prim() || aTopLine.Secn()) { long nUpperRotate = lcl_getRotate( mpDoc, nTab, nX, nY - 1 ); - pProcessor->process( svx::frame::CreateBorderPrimitives( - aPoints[bLayoutRTL?1:0], aPoints[bLayoutRTL?0:1], aTopLine, - svx::frame::Style(), - svx::frame::Style(), - aLeftLine, - svx::frame::Style(), - svx::frame::Style(), - aRightLine, - pForceColor, nUpperRotate, nAttrRotate ) ); + drawinglayer::primitive2d::Primitive2DContainer aSequence(1); + aSequence.append( + svx::frame::CreateBorderPrimitives( + aPoints[bLayoutRTL?1:0], aPoints[bLayoutRTL?0:1], aTopLine, + svx::frame::Style(), + svx::frame::Style(), + aLeftLine, + svx::frame::Style(), + svx::frame::Style(), + aRightLine, + pForceColor, nUpperRotate, nAttrRotate ) ); + pProcessor->process(aSequence); } if (aBottomLine.Prim() || aBottomLine.Secn()) { long nLowerRotate = lcl_getRotate( mpDoc, nTab, nX, nY + 1 ); - pProcessor->process( svx::frame::CreateBorderPrimitives( - aPoints[bLayoutRTL?2:3], aPoints[bLayoutRTL?3:2], aBottomLine, - aLeftLine, - svx::frame::Style(), - svx::frame::Style(), - aRightLine, - svx::frame::Style(), - svx::frame::Style(), - pForceColor, 18000 - nAttrRotate, 18000 - nLowerRotate ) ); + drawinglayer::primitive2d::Primitive2DContainer aSequence(1); + aSequence.append( + svx::frame::CreateBorderPrimitives( + aPoints[bLayoutRTL?2:3], aPoints[bLayoutRTL?3:2], aBottomLine, + aLeftLine, + svx::frame::Style(), + svx::frame::Style(), + aRightLine, + svx::frame::Style(), + svx::frame::Style(), + pForceColor, 18000 - nAttrRotate, 18000 - nLowerRotate ) ); + pProcessor->process(aSequence); } // Vertical slanted lines if (aLeftLine.Prim() || aLeftLine.Secn()) { long nLeftRotate = lcl_getRotate( mpDoc, nTab, nX - 1, nY ); - pProcessor->process( svx::frame::CreateBorderPrimitives( - aPoints[0], aPoints[3], aLeftLine, - aTopLine, - svx::frame::Style(), - svx::frame::Style(), - aBottomLine, - svx::frame::Style(), - svx::frame::Style(), - pForceColor, nAttrRotate, nLeftRotate ) ); + drawinglayer::primitive2d::Primitive2DContainer aSequence(1); + aSequence.append( + svx::frame::CreateBorderPrimitives( + aPoints[0], aPoints[3], aLeftLine, + aTopLine, + svx::frame::Style(), + svx::frame::Style(), + aBottomLine, + svx::frame::Style(), + svx::frame::Style(), + pForceColor, nAttrRotate, nLeftRotate ) ); + pProcessor->process(aSequence); } if (aRightLine.Prim() || aRightLine.Secn()) { long nRightRotate = lcl_getRotate( mpDoc, nTab, nX + 1, nY ); - pProcessor->process( svx::frame::CreateBorderPrimitives( - aPoints[1], aPoints[2], aRightLine, - svx::frame::Style(), - svx::frame::Style(), - aTopLine, - svx::frame::Style(), - svx::frame::Style(), - aBottomLine, - pForceColor, 18000 - nRightRotate, 18000 - nAttrRotate ) ); + drawinglayer::primitive2d::Primitive2DContainer aSequence(1); + aSequence.append( + svx::frame::CreateBorderPrimitives( + aPoints[1], aPoints[2], aRightLine, + svx::frame::Style(), + svx::frame::Style(), + aTopLine, + svx::frame::Style(), + svx::frame::Style(), + aBottomLine, + pForceColor, 18000 - nRightRotate, 18000 - nAttrRotate ) ); + pProcessor->process(aSequence); } } } |