chart2/source/view/charttypes/PieChart.cxx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)
New commits: commit 3339c730f8c9a6088a2e8b335185f1bf0b232216 Author: Tamas Bunth <tamas.bu...@collabora.co.uk> AuthorDate: Mon Nov 26 07:19:41 2018 +0100 Commit: Tamás Bunth <btom...@gmail.com> CommitDate: Mon Nov 26 09:47:43 2018 +0100 Put text label outside of the pie if.. performLabelBestFitInnerPlacement fails. Change-Id: Ic84e8b42e02da2023b22a9406c44d462170c5305 Reviewed-on: https://gerrit.libreoffice.org/64015 Tested-by: Jenkins Reviewed-by: Tamás Bunth <btom...@gmail.com> diff --git a/chart2/source/view/charttypes/PieChart.cxx b/chart2/source/view/charttypes/PieChart.cxx index 7f03317b5daa..35e789b52f8f 100644 --- a/chart2/source/view/charttypes/PieChart.cxx +++ b/chart2/source/view/charttypes/PieChart.cxx @@ -1575,7 +1575,18 @@ void PieChart::performLabelBestFit(ShapeParam& rShapeParam, PieLabelInfo const & if( !performLabelBestFitInnerPlacement(rShapeParam, rPieLabelInfo) ) { - // TODO + // If it does not fit inside, let's put it outside + PolarLabelPositionHelper aPolarPosHelper(m_pPosHelper.get(),m_nDimension,m_xLogicTarget,m_pShapeFactory); + auto eAlignment = LABEL_ALIGN_CENTER; + awt::Point aScreenPosition2D( + aPolarPosHelper.getLabelScreenPositionAndAlignmentForUnitCircleValues(eAlignment, css::chart::DataLabelPlacement::OUTSIDE + , rShapeParam.mfUnitCircleStartAngleDegree, rShapeParam.mfUnitCircleWidthAngleDegree + , rShapeParam.mfUnitCircleInnerRadius, rShapeParam.mfUnitCircleOuterRadius, rShapeParam.mfLogicZ+0.5, 0 )); + basegfx::B2IVector aTranslationVector = rPieLabelInfo.aFirstPosition - rPieLabelInfo.aOrigin; + aTranslationVector.setLength(150); + aScreenPosition2D.X += aTranslationVector.getX(); + aScreenPosition2D.Y += aTranslationVector.getY(); + rPieLabelInfo.xLabelGroupShape->setPosition(aScreenPosition2D); } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits