summaryrefslogtreecommitdiff
path: root/sc/source/ui/view/viewfunc.cxx
diff options
context:
space:
mode:
authorJuan Picca <jumapico@gmail.com>2014-09-19 14:19:30 -0300
committerDavid Tardon <dtardon@redhat.com>2014-10-09 11:33:33 +0000
commit47a2d7642d249d70b5da0c330a73f3a0032e4bba (patch)
tree202b04810382ea87cf8015a7b4de29e931408948 /sc/source/ui/view/viewfunc.cxx
parentae77dc81c33ab0817264bcf5fc8bb71a55b78a73 (diff)
fdo#81356: convert Fraction to boost::rational<long> - wip
* Added rational util functions used by Fraction class not available in the boost::rational class. * Replaced usage of Fraction by boost::rational<long> * Removed code that relies on: 1. fraction.IsValid() -- rational only allow valid values, ie denominator() != 0 2. rational.denominator() == 0 -- always false 3. rational.denominator() < 0 -- always false but implementation detail: http://www.boost.org/doc/libs/release/libs/rational/rational.html#Internal%20representation * Simplified code that relies on: 1. rational.denominator() != 0 -- always true * BUGS EXIST because Fraction allows the creation of invalid values but boost::rational throws the exception boost::bad_rational Change-Id: I84970a4956afb3f91ac0c8f726547466319420f9 Reviewed-on: https://gerrit.libreoffice.org/11551 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'sc/source/ui/view/viewfunc.cxx')
-rw-r--r--sc/source/ui/view/viewfunc.cxx18
1 files changed, 9 insertions, 9 deletions
diff --git a/sc/source/ui/view/viewfunc.cxx b/sc/source/ui/view/viewfunc.cxx
index f1ab1ebd8dba..3ed06d2db3de 100644
--- a/sc/source/ui/view/viewfunc.cxx
+++ b/sc/source/ui/view/viewfunc.cxx
@@ -228,15 +228,15 @@ sal_uInt16 ScViewFunc::GetOptimalColWidth( SCCOL nCol, SCTAB nTab, bool bFormula
double nPPTX = GetViewData().GetPPTX();
double nPPTY = GetViewData().GetPPTY();
- Fraction aZoomX = GetViewData().GetZoomX();
- Fraction aZoomY = GetViewData().GetZoomY();
+ boost::rational<long> aZoomX = GetViewData().GetZoomX();
+ boost::rational<long> aZoomY = GetViewData().GetZoomY();
ScSizeDeviceProvider aProv(pDocSh);
if (aProv.IsPrinter())
{
nPPTX = aProv.GetPPTX();
nPPTY = aProv.GetPPTY();
- aZoomX = aZoomY = Fraction( 1, 1 );
+ aZoomX = aZoomY = boost::rational<long>( 1, 1 );
}
sal_uInt16 nTwips = rDoc.GetOptimalColWidth( nCol, nTab, aProv.GetDevice(),
@@ -2031,15 +2031,15 @@ void ScViewFunc::SetWidthOrHeight(
double nPPTX = GetViewData().GetPPTX();
double nPPTY = GetViewData().GetPPTY();
- Fraction aZoomX = GetViewData().GetZoomX();
- Fraction aZoomY = GetViewData().GetZoomY();
+ boost::rational<long> aZoomX = GetViewData().GetZoomX();
+ boost::rational<long> aZoomY = GetViewData().GetZoomY();
ScSizeDeviceProvider aProv(pDocSh);
if (aProv.IsPrinter())
{
nPPTX = aProv.GetPPTX();
nPPTY = aProv.GetPPTY();
- aZoomX = aZoomY = Fraction( 1, 1 );
+ aZoomX = aZoomY = boost::rational<long>( 1, 1 );
}
sc::RowHeightContext aCxt(nPPTX, nPPTY, aZoomX, aZoomY, aProv.GetDevice());
@@ -2265,15 +2265,15 @@ void ScViewFunc::ModifyCellSize( ScDirection eDir, bool bOptimal )
{
double nPPTX = GetViewData().GetPPTX();
double nPPTY = GetViewData().GetPPTY();
- Fraction aZoomX = GetViewData().GetZoomX();
- Fraction aZoomY = GetViewData().GetZoomY();
+ boost::rational<long> aZoomX = GetViewData().GetZoomX();
+ boost::rational<long> aZoomY = GetViewData().GetZoomY();
ScSizeDeviceProvider aProv(pDocSh);
if (aProv.IsPrinter())
{
nPPTX = aProv.GetPPTX();
nPPTY = aProv.GetPPTY();
- aZoomX = aZoomY = Fraction( 1, 1 );
+ aZoomX = aZoomY = boost::rational<long>( 1, 1 );
}
long nPixel = rDoc.GetNeededSize( nCol, nRow, nTab, aProv.GetDevice(),