From 9f74b6fee1082caf96d78c731c77e10a67c3bc41 Mon Sep 17 00:00:00 2001 From: Matteo Casalin Date: Thu, 28 Dec 2017 23:34:28 +0100 Subject: Simplify SdrModel::TakePercentStr * Group checks on sign * Let OUString::number print the sign Change-Id: I1ae22141f813eb4ff5b527423354e195485f8037 --- svx/source/svdraw/svdmodel.cxx | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/svx/source/svdraw/svdmodel.cxx b/svx/source/svdraw/svdmodel.cxx index 2e09b6c18814..6e878d5ee372 100644 --- a/svx/source/svdraw/svdmodel.cxx +++ b/svx/source/svdraw/svdmodel.cxx @@ -1296,27 +1296,26 @@ void SdrModel::TakePercentStr(const Fraction& rVal, OUString& rStr) { sal_Int32 nMul(rVal.GetNumerator()); sal_Int32 nDiv(rVal.GetDenominator()); - bool bNeg(nMul < 0); + bool bNeg {false}; - if(nDiv < 0) + if (nDiv < 0) + { bNeg = !bNeg; - - if(nMul < 0) - nMul = -nMul; - - if(nDiv < 0) nDiv = -nDiv; + } - nMul *= 100; - nMul += nDiv/2; - nMul /= nDiv; + if (nMul < 0) + { + bNeg = !bNeg; + nMul = -nMul; + } - rStr = OUString::number(nMul); + sal_Int32 nPct = ((nMul*100) + nDiv/2)/nDiv; - if(bNeg) - rStr = "-" + rStr; + if (bNeg) + nPct = -nPct; - rStr += "%"; + rStr = OUString::number(nPct) + "%"; } void SdrModel::SetChanged(bool bFlg) -- cgit