[Libreoffice-commits] core.git: 3 commits - basctl/source basic/source chart2/source configure.ac cui/source dbaccess/source download.lst drawinglayer/source editeng/source external/libmwaw filter/Configuration_filter.mk filter/source forms/source include/oox include/sfx2 include/svtools include/svx include/tools include/vcl reportdesign/inc reportdesign/source sc/inc sc/source sd/source sfx2/source starmath/inc starmath/source svtools/source svx/inc svx/source sw/inc sw/source toolkit/source tools/qa tools/source vcl/inc vcl/source writerfilter/source writerperfect/qa writerperfect/source

David Tardon dtardon at redhat.com
Thu Oct 16 08:45:54 PDT 2014


 basctl/source/dlged/dlged.cxx                                  |    2 
 basctl/source/dlged/dlgedobj.cxx                               |    4 
 basctl/source/inc/dlgedobj.hxx                                 |    4 
 basic/source/runtime/methods1.cxx                              |    4 
 chart2/source/controller/main/ChartController_Window.cxx       |    4 
 chart2/source/view/main/DrawModelWrapper.cxx                   |    2 
 configure.ac                                                   |    2 
 cui/source/tabpages/grfpage.cxx                                |    4 
 cui/source/tabpages/transfrm.cxx                               |   10 
 dbaccess/source/ui/inc/JoinController.hxx                      |    2 
 download.lst                                                   |    4 
 drawinglayer/source/primitive2d/metafileprimitive2d.cxx        |    2 
 editeng/source/editeng/impedit3.cxx                            |    2 
 external/libmwaw/Library_mwaw.mk                               |    2 
 external/libmwaw/UnpackedTarball_libmwaw.mk                    |    8 
 filter/Configuration_filter.mk                                 |    6 
 filter/source/config/fragments/filters/MacDrawPro_Draw.xcu     |   30 ++
 filter/source/config/fragments/filters/MacDraw_Draw.xcu        |   30 ++
 filter/source/config/fragments/filters/Mac_RagTime.xcu         |   29 ++
 filter/source/config/fragments/types/draw_MacDraw.xcu          |   29 ++
 filter/source/config/fragments/types/draw_MacDrawPro.xcu       |   29 ++
 filter/source/config/fragments/types/writer_Mac_RagTime.xcu    |   29 ++
 filter/source/graphicfilter/eos2met/eos2met.cxx                |    4 
 filter/source/graphicfilter/epict/epict.cxx                    |    6 
 filter/source/graphicfilter/ios2met/ios2met.cxx                |    4 
 filter/source/graphicfilter/ipict/ipict.cxx                    |    6 
 filter/source/graphicfilter/ipsd/ipsd.cxx                      |    4 
 filter/source/graphicfilter/itiff/itiff.cxx                    |    2 
 filter/source/msfilter/eschesdo.cxx                            |    2 
 filter/source/msfilter/msdffimp.cxx                            |   18 -
 filter/source/msfilter/svdfppt.cxx                             |    2 
 filter/source/svg/svgwriter.cxx                                |    8 
 forms/source/richtext/richtextimplcontrol.cxx                  |    2 
 include/oox/export/chartexport.hxx                             |    2 
 include/oox/export/shapes.hxx                                  |    2 
 include/sfx2/ipclient.hxx                                      |    8 
 include/sfx2/objsh.hxx                                         |    4 
 include/sfx2/viewfrm.hxx                                       |    2 
 include/sfx2/viewsh.hxx                                        |    2 
 include/svtools/imap.hxx                                       |    2 
 include/svtools/imapcirc.hxx                                   |    2 
 include/svtools/imappoly.hxx                                   |    2 
 include/svtools/imaprect.hxx                                   |    2 
 include/svtools/ruler.hxx                                      |    6 
 include/svx/obj3d.hxx                                          |    2 
 include/svx/scene3d.hxx                                        |    4 
 include/svx/sdr/properties/defaultproperties.hxx               |    2 
 include/svx/sdr/properties/properties.hxx                      |    2 
 include/svx/svddrag.hxx                                        |    4 
 include/svx/svddrgmt.hxx                                       |    4 
 include/svx/svdedtv.hxx                                        |    6 
 include/svx/svdetc.hxx                                         |    6 
 include/svx/svdglev.hxx                                        |    2 
 include/svx/svdmodel.hxx                                       |   22 -
 include/svx/svdoashp.hxx                                       |    4 
 include/svx/svdobj.hxx                                         |    4 
 include/svx/svdocapt.hxx                                       |    2 
 include/svx/svdocirc.hxx                                       |    2 
 include/svx/svdoedge.hxx                                       |    2 
 include/svx/svdograf.hxx                                       |    2 
 include/svx/svdogrp.hxx                                        |    4 
 include/svx/svdomeas.hxx                                       |    2 
 include/svx/svdoole2.hxx                                       |    4 
 include/svx/svdopath.hxx                                       |    2 
 include/svx/svdorect.hxx                                       |    2 
 include/svx/svdotable.hxx                                      |    2 
 include/svx/svdotext.hxx                                       |    6 
 include/svx/svdouno.hxx                                        |    2 
 include/svx/svdovirt.hxx                                       |    4 
 include/svx/svdpoev.hxx                                        |    2 
 include/svx/svdsnpv.hxx                                        |   10 
 include/svx/svdtrans.hxx                                       |   32 +-
 include/svx/sxfiitm.hxx                                        |    8 
 include/svx/sxsiitm.hxx                                        |    4 
 include/tools/rational.hxx                                     |    8 
 include/vcl/gdimtf.hxx                                         |    2 
 include/vcl/mapmod.hxx                                         |   14 -
 include/vcl/virdev.hxx                                         |    2 
 include/vcl/window.hxx                                         |    4 
 reportdesign/inc/RptObject.hxx                                 |    6 
 reportdesign/source/core/sdr/RptObject.cxx                     |    6 
 reportdesign/source/ui/inc/DesignView.hxx                      |    2 
 reportdesign/source/ui/inc/ReportWindow.hxx                    |    2 
 reportdesign/source/ui/inc/ScrollHelper.hxx                    |    2 
 reportdesign/source/ui/inc/SectionWindow.hxx                   |    2 
 reportdesign/source/ui/inc/StartMarker.hxx                     |    2 
 reportdesign/source/ui/inc/UITools.hxx                         |    2 
 reportdesign/source/ui/inc/ViewsWindow.hxx                     |    2 
 reportdesign/source/ui/misc/UITools.cxx                        |    2 
 reportdesign/source/ui/report/DesignView.cxx                   |    2 
 reportdesign/source/ui/report/EndMarker.cxx                    |    2 
 reportdesign/source/ui/report/ReportController.cxx             |    2 
 reportdesign/source/ui/report/ReportSection.cxx                |    4 
 reportdesign/source/ui/report/ReportWindow.cxx                 |   20 -
 reportdesign/source/ui/report/ScrollHelper.cxx                 |    6 
 reportdesign/source/ui/report/SectionWindow.cxx                |    6 
 reportdesign/source/ui/report/StartMarker.cxx                  |    6 
 reportdesign/source/ui/report/ViewsWindow.cxx                  |    6 
 reportdesign/source/ui/report/dlgedfunc.cxx                    |    2 
 sc/inc/column.hxx                                              |    4 
 sc/inc/document.hxx                                            |    6 
 sc/inc/editutil.hxx                                            |    6 
 sc/inc/patattr.hxx                                             |    4 
 sc/inc/rowheightcontext.hxx                                    |   10 
 sc/inc/table.hxx                                               |    6 
 sc/source/core/data/column2.cxx                                |    6 
 sc/source/core/data/dociter.cxx                                |    4 
 sc/source/core/data/documen8.cxx                               |    4 
 sc/source/core/data/document.cxx                               |    6 
 sc/source/core/data/drwlayer.cxx                               |    8 
 sc/source/core/data/patattr.cxx                                |    8 
 sc/source/core/data/rowheightcontext.cxx                       |    2 
 sc/source/core/data/table1.cxx                                 |    6 
 sc/source/core/data/table2.cxx                                 |    2 
 sc/source/filter/rtf/eeimpars.cxx                              |    2 
 sc/source/ui/app/client.cxx                                    |    4 
 sc/source/ui/app/inputhdl.cxx                                  |    2 
 sc/source/ui/cctrl/dpcontrol.cxx                               |    6 
 sc/source/ui/docshell/docfunc.cxx                              |    6 
 sc/source/ui/docshell/docsh.cxx                                |    2 
 sc/source/ui/docshell/docsh5.cxx                               |    4 
 sc/source/ui/drawfunc/fuins1.cxx                               |    2 
 sc/source/ui/inc/dpcontrol.hxx                                 |    6 
 sc/source/ui/inc/drawutil.hxx                                  |    4 
 sc/source/ui/inc/drawview.hxx                                  |    8 
 sc/source/ui/inc/inputhdl.hxx                                  |    6 
 sc/source/ui/inc/output.hxx                                    |    8 
 sc/source/ui/inc/tabview.hxx                                   |    2 
 sc/source/ui/inc/tabvwsh.hxx                                   |    2 
 sc/source/ui/inc/viewdata.hxx                                  |   26 -
 sc/source/ui/undo/undobase.cxx                                 |    8 
 sc/source/ui/undo/undoblk3.cxx                                 |    4 
 sc/source/ui/undo/undostyl.cxx                                 |    2 
 sc/source/ui/unoobj/docuno.cxx                                 |    4 
 sc/source/ui/unoobj/styleuno.cxx                               |    8 
 sc/source/ui/unoobj/viewuno.cxx                                |    4 
 sc/source/ui/vba/excelvbahelper.cxx                            |    2 
 sc/source/ui/view/drawutil.cxx                                 |    8 
 sc/source/ui/view/drawvie4.cxx                                 |   10 
 sc/source/ui/view/drawview.cxx                                 |   10 
 sc/source/ui/view/gridwin.cxx                                  |    4 
 sc/source/ui/view/gridwin3.cxx                                 |    4 
 sc/source/ui/view/gridwin4.cxx                                 |    6 
 sc/source/ui/view/output.cxx                                   |    6 
 sc/source/ui/view/output2.cxx                                  |    8 
 sc/source/ui/view/preview.cxx                                  |   24 -
 sc/source/ui/view/printfun.cxx                                 |    8 
 sc/source/ui/view/tabview.cxx                                  |   10 
 sc/source/ui/view/tabview2.cxx                                 |    2 
 sc/source/ui/view/tabview3.cxx                                 |    4 
 sc/source/ui/view/tabview5.cxx                                 |    2 
 sc/source/ui/view/tabvwsh3.cxx                                 |    6 
 sc/source/ui/view/tabvwsh4.cxx                                 |   20 -
 sc/source/ui/view/tabvwsha.cxx                                 |    4 
 sc/source/ui/view/tabvwshb.cxx                                 |   10 
 sc/source/ui/view/tabvwshh.cxx                                 |    8 
 sc/source/ui/view/viewdata.cxx                                 |   46 +--
 sc/source/ui/view/viewfun2.cxx                                 |   12 
 sc/source/ui/view/viewfun7.cxx                                 |    2 
 sc/source/ui/view/viewfunc.cxx                                 |   18 -
 sd/source/core/drawdoc.cxx                                     |    6 
 sd/source/core/sdpage.cxx                                      |    4 
 sd/source/filter/eppt/eppt.cxx                                 |    2 
 sd/source/filter/eppt/epptbase.hxx                             |    2 
 sd/source/filter/eppt/pptx-text.cxx                            |    4 
 sd/source/ui/app/sdmod2.cxx                                    |    4 
 sd/source/ui/dlg/animobjs.cxx                                  |   12 
 sd/source/ui/dlg/docprev.cxx                                   |    2 
 sd/source/ui/dlg/vectdlg.cxx                                   |    8 
 sd/source/ui/docshell/docshel2.cxx                             |    4 
 sd/source/ui/func/fucopy.cxx                                   |    4 
 sd/source/ui/inc/DrawViewShell.hxx                             |    2 
 sd/source/ui/inc/ViewShell.hxx                                 |    4 
 sd/source/ui/inc/ViewShellBase.hxx                             |    4 
 sd/source/ui/inc/animobjs.hxx                                  |    6 
 sd/source/ui/inc/copydlg.hxx                                   |    2 
 sd/source/ui/inc/dlgsnap.hxx                                   |    2 
 sd/source/ui/inc/vectdlg.hxx                                   |    2 
 sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx              |    2 
 sd/source/ui/tools/PreviewRenderer.cxx                         |    4 
 sd/source/ui/unoidl/UnoDocumentSettings.cxx                    |    4 
 sd/source/ui/unoidl/unomodel.cxx                               |    8 
 sd/source/ui/view/DocumentRenderer.cxx                         |   20 -
 sd/source/ui/view/ViewShellBase.cxx                            |    8 
 sd/source/ui/view/drviews1.cxx                                 |    4 
 sd/source/ui/view/drviews5.cxx                                 |    2 
 sd/source/ui/view/drviewsa.cxx                                 |    2 
 sd/source/ui/view/frmview.cxx                                  |   10 
 sd/source/ui/view/sdview.cxx                                   |    8 
 sd/source/ui/view/sdview3.cxx                                  |    4 
 sd/source/ui/view/sdview4.cxx                                  |    4 
 sd/source/ui/view/sdwindow.cxx                                 |    4 
 sd/source/ui/view/viewshe2.cxx                                 |   10 
 sfx2/source/doc/objembed.cxx                                   |    8 
 sfx2/source/view/ipclient.cxx                                  |   18 -
 sfx2/source/view/viewfrm2.cxx                                  |    2 
 sfx2/source/view/viewsh.cxx                                    |    4 
 starmath/inc/node.hxx                                          |   12 
 starmath/inc/utility.hxx                                       |   18 -
 starmath/inc/view.hxx                                          |    2 
 starmath/source/ElementsDockingWindow.cxx                      |    2 
 starmath/source/mathmlexport.cxx                               |    4 
 starmath/source/node.cxx                                       |   30 +-
 starmath/source/parse.cxx                                      |    4 
 starmath/source/utility.cxx                                    |    2 
 starmath/source/view.cxx                                       |   24 -
 svtools/source/brwbox/brwbox1.cxx                              |    2 
 svtools/source/brwbox/datwin.cxx                               |    6 
 svtools/source/brwbox/datwin.hxx                               |    6 
 svtools/source/control/ctrltool.cxx                            |    2 
 svtools/source/control/ruler.cxx                               |    4 
 svtools/source/filter/exportdialog.cxx                         |    4 
 svtools/source/graphic/grfmgr.cxx                              |    2 
 svtools/source/misc/imap.cxx                                   |   12 
 svx/inc/sdr/properties/itemsettools.hxx                        |    2 
 svx/inc/svdoopengl.hxx                                         |    2 
 svx/inc/sxmsitm.hxx                                            |    4 
 svx/inc/sxreaitm.hxx                                           |    8 
 svx/inc/sxreoitm.hxx                                           |    8 
 svx/source/customshapes/EnhancedCustomShape3d.cxx              |    2 
 svx/source/customshapes/EnhancedCustomShapeFunctionParser.cxx  |    2 
 svx/source/dialog/connctrl.cxx                                 |   20 -
 svx/source/dialog/graphctl.cxx                                 |    6 
 svx/source/dialog/measctrl.cxx                                 |   18 -
 svx/source/dialog/pagectrl.cxx                                 |   10 
 svx/source/engine3d/obj3d.cxx                                  |    2 
 svx/source/engine3d/scene3d.cxx                                |    4 
 svx/source/fmcomp/gridctrl.cxx                                 |    2 
 svx/source/sdr/contact/viewobjectcontactofunocontrol.cxx       |    2 
 svx/source/sdr/properties/attributeproperties.cxx              |    2 
 svx/source/sdr/properties/defaultproperties.cxx                |    2 
 svx/source/sdr/properties/itemsettools.cxx                     |    2 
 svx/source/sdr/properties/properties.cxx                       |    2 
 svx/source/sidebar/possize/PosSizePropertyPanel.cxx            |    8 
 svx/source/sidebar/possize/PosSizePropertyPanel.hxx            |    2 
 svx/source/svdraw/svdattr.cxx                                  |    2 
 svx/source/svdraw/svddrag.cxx                                  |    8 
 svx/source/svdraw/svddrgm1.hxx                                 |    4 
 svx/source/svdraw/svddrgmt.cxx                                 |   58 ++--
 svx/source/svdraw/svdedtv1.cxx                                 |   20 -
 svx/source/svdraw/svdfmtf.cxx                                  |    8 
 svx/source/svdraw/svdfmtf.hxx                                  |    4 
 svx/source/svdraw/svdglev.cxx                                  |    4 
 svx/source/svdraw/svdibrow.cxx                                 |    2 
 svx/source/svdraw/svdmodel.cxx                                 |   18 -
 svx/source/svdraw/svdoashp.cxx                                 |    8 
 svx/source/svdraw/svdobj.cxx                                   |   14 -
 svx/source/svdraw/svdocapt.cxx                                 |    2 
 svx/source/svdraw/svdocirc.cxx                                 |    4 
 svx/source/svdraw/svdoedge.cxx                                 |    6 
 svx/source/svdraw/svdograf.cxx                                 |    2 
 svx/source/svdraw/svdogrp.cxx                                  |   12 
 svx/source/svdraw/svdomeas.cxx                                 |    8 
 svx/source/svdraw/svdoole2.cxx                                 |   30 +-
 svx/source/svdraw/svdoopengl.cxx                               |    2 
 svx/source/svdraw/svdopath.cxx                                 |    6 
 svx/source/svdraw/svdorect.cxx                                 |    2 
 svx/source/svdraw/svdotext.cxx                                 |   10 
 svx/source/svdraw/svdotxdr.cxx                                 |    4 
 svx/source/svdraw/svdotxed.cxx                                 |    2 
 svx/source/svdraw/svdotxtr.cxx                                 |    4 
 svx/source/svdraw/svdouno.cxx                                  |    2 
 svx/source/svdraw/svdovirt.cxx                                 |    4 
 svx/source/svdraw/svdpntv.cxx                                  |    4 
 svx/source/svdraw/svdpoev.cxx                                  |    8 
 svx/source/svdraw/svdtext.cxx                                  |    2 
 svx/source/svdraw/svdtrans.cxx                                 |   30 +-
 svx/source/svdraw/svdview.cxx                                  |    4 
 svx/source/svdraw/svdxcgv.cxx                                  |    8 
 svx/source/table/svdotable.cxx                                 |    2 
 svx/source/unodraw/UnoGraphicExporter.cxx                      |   16 -
 svx/source/unodraw/unoshape.cxx                                |    4 
 sw/inc/accmap.hxx                                              |    4 
 sw/inc/dcontact.hxx                                            |    4 
 sw/inc/pagedesc.hxx                                            |    6 
 sw/inc/pagepreviewlayout.hxx                                   |    4 
 sw/source/core/access/accmap.cxx                               |   10 
 sw/source/core/doc/tblrwcl.cxx                                 |    6 
 sw/source/core/draw/dcontact.cxx                               |    4 
 sw/source/core/draw/dflyobj.cxx                                |    4 
 sw/source/core/frmedt/fecopy.cxx                               |    4 
 sw/source/core/graphic/ndgrf.cxx                               |    8 
 sw/source/core/inc/dflyobj.hxx                                 |    8 
 sw/source/core/inc/viewimp.hxx                                 |    2 
 sw/source/core/layout/anchoreddrawobject.cxx                   |    4 
 sw/source/core/layout/fly.cxx                                  |    8 
 sw/source/core/layout/paintfrm.cxx                             |    4 
 sw/source/core/txtnode/fntcache.cxx                            |    2 
 sw/source/core/view/pagepreviewlayout.cxx                      |   12 
 sw/source/core/view/viewimp.cxx                                |    6 
 sw/source/core/view/viewpg.cxx                                 |    8 
 sw/source/core/view/viewsh.cxx                                 |   10 
 sw/source/core/view/vnew.cxx                                   |    2 
 sw/source/filter/html/htmlflywriter.cxx                        |    8 
 sw/source/filter/writer/wrtswtbl.cxx                           |    4 
 sw/source/filter/ww1/w1filter.cxx                              |    4 
 sw/source/filter/ww8/writerhelper.cxx                          |   12 
 sw/source/filter/ww8/wrtw8esh.cxx                              |    4 
 sw/source/filter/ww8/ww8graf.cxx                               |   12 
 sw/source/filter/ww8/ww8par4.cxx                               |    8 
 sw/source/ui/misc/pgfnote.cxx                                  |    4 
 sw/source/uibase/docvw/PostItMgr.cxx                           |   10 
 sw/source/uibase/docvw/SidebarWin.cxx                          |   10 
 sw/source/uibase/frmdlg/colex.cxx                              |    2 
 sw/source/uibase/inc/pview.hxx                                 |    2 
 sw/source/uibase/inc/view.hxx                                  |    2 
 sw/source/uibase/uiview/pview.cxx                              |    2 
 sw/source/uibase/uiview/view.cxx                               |    2 
 sw/source/uibase/uiview/viewmdi.cxx                            |    2 
 sw/source/uibase/uiview/viewport.cxx                           |   12 
 sw/source/uibase/utlui/uiitems.cxx                             |    4 
 sw/source/uibase/wrtsh/wrtsh1.cxx                              |    8 
 toolkit/source/awt/vclxtoolkit.cxx                             |    4 
 tools/qa/cppunit/test_rational.cxx                             |    8 
 tools/source/generic/rational.cxx                              |   10 
 vcl/inc/window.h                                               |    2 
 vcl/source/filter/graphicfilter.cxx                            |    6 
 vcl/source/filter/graphicfilter2.cxx                           |    6 
 vcl/source/filter/jpeg/JpegReader.cxx                          |    4 
 vcl/source/filter/sgfbram.cxx                                  |    2 
 vcl/source/filter/sgvmain.cxx                                  |    2 
 vcl/source/filter/sgvtext.cxx                                  |    2 
 vcl/source/filter/wmf/emfwr.cxx                                |    4 
 vcl/source/filter/wmf/winmtf.cxx                               |    4 
 vcl/source/filter/wmf/winwmf.cxx                               |    2 
 vcl/source/filter/wmf/wmfwr.cxx                                |   10 
 vcl/source/gdi/cvtsvm.cxx                                      |    2 
 vcl/source/gdi/dibtools.cxx                                    |    4 
 vcl/source/gdi/gdimtf.cxx                                      |    6 
 vcl/source/gdi/impgraph.cxx                                    |    4 
 vcl/source/gdi/mapmod.cxx                                      |    8 
 vcl/source/gdi/pdfwriter_impl.cxx                              |    2 
 vcl/source/gdi/pdfwriter_impl2.cxx                             |    4 
 vcl/source/gdi/textlayout.cxx                                  |    2 
 vcl/source/gdi/virdev.cxx                                      |    2 
 vcl/source/outdev/font.cxx                                     |    2 
 vcl/source/outdev/map.cxx                                      |   32 +-
 vcl/source/window/window.cxx                                   |    2 
 vcl/source/window/window2.cxx                                  |    8 
 writerfilter/source/dmapper/WrapPolygonHandler.cxx             |   14 -
 writerfilter/source/dmapper/WrapPolygonHandler.hxx             |    2 
 writerperfect/qa/unit/data/draw/libmwaw/pass/MacDraw_0.hqx     |    9 
 writerperfect/qa/unit/data/draw/libmwaw/pass/MacDraw_1.hqx     |  103 +++++++
 writerperfect/qa/unit/data/draw/libmwaw/pass/MacDraw_II.hqx    |  110 ++++++++
 writerperfect/qa/unit/data/writer/libmwaw/pass/RagTime_2.1.hqx |   24 +
 writerperfect/qa/unit/data/writer/libmwaw/pass/RagTime_3.2.hqx |  136 ++++++++++
 writerperfect/source/draw/MWAWDrawImportFilter.cxx             |    8 
 writerperfect/source/writer/MWAWImportFilter.cxx               |    4 
 348 files changed, 1578 insertions(+), 1016 deletions(-)

New commits:
commit 582ef22d3e8e30ffd58f092d37ffda30bd07bd9e
Author: David Tardon <dtardon at redhat.com>
Date:   Thu Oct 16 15:30:32 2014 +0200

    fdo#84854 it seems long is not enough on 32 bit
    
    Fraction used BigInt internally for computations, rational does nothing
    like that.
    
    Change-Id: I3e9b25074f979bc291208f7c6362c3c40eb77ff5

diff --git a/basctl/source/dlged/dlged.cxx b/basctl/source/dlged/dlged.cxx
index 5d8373a..791c9c2 100644
--- a/basctl/source/dlged/dlged.cxx
+++ b/basctl/source/dlged/dlged.cxx
@@ -234,7 +234,7 @@ DlgEditor::DlgEditor (
     pDlgEdView->SetWorkArea( Rectangle( Point( 0, 0 ), pDlgEdPage->GetSize() ) );
 
     pDlgEdView->SetGridCoarse( aGridSize );
-    pDlgEdView->SetSnapGridWidth(boost::rational<long>(aGridSize.Width(),1), boost::rational<long>(aGridSize.Height(),1));
+    pDlgEdView->SetSnapGridWidth(boost::rational<sal_Int64>(aGridSize.Width(),1), boost::rational<sal_Int64>(aGridSize.Height(),1));
     pDlgEdView->SetGridSnap( bGridSnap );
     pDlgEdView->SetGridVisible( bGridVisible );
     pDlgEdView->SetDragStripes(false);
diff --git a/basctl/source/dlged/dlgedobj.cxx b/basctl/source/dlged/dlgedobj.cxx
index 89a0207..cd837a4 100644
--- a/basctl/source/dlged/dlgedobj.cxx
+++ b/basctl/source/dlged/dlgedobj.cxx
@@ -940,7 +940,7 @@ void DlgEdObj::NbcMove( const Size& rSize )
     GetDlgEdForm()->GetDlgEditor().SetDialogModelChanged(true);
 }
 
-void DlgEdObj::NbcResize(const Point& rRef, const boost::rational<long>& xFract, const boost::rational<long>& yFract)
+void DlgEdObj::NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFract, const boost::rational<sal_Int64>& yFract)
 {
     SdrUnoObj::NbcResize( rRef, xFract, yFract );
 
@@ -1590,7 +1590,7 @@ void DlgEdForm::NbcMove( const Size& rSize )
     GetDlgEditor().SetDialogModelChanged(true);
 }
 
-void DlgEdForm::NbcResize(const Point& rRef, const boost::rational<long>& xFract, const boost::rational<long>& yFract)
+void DlgEdForm::NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFract, const boost::rational<sal_Int64>& yFract)
 {
     SdrUnoObj::NbcResize( rRef, xFract, yFract );
 
diff --git a/basctl/source/inc/dlgedobj.hxx b/basctl/source/inc/dlgedobj.hxx
index 33e489f..c980eec 100644
--- a/basctl/source/inc/dlgedobj.hxx
+++ b/basctl/source/inc/dlgedobj.hxx
@@ -63,7 +63,7 @@ protected:
              const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rxSFac);
 
     virtual void NbcMove( const Size& rSize ) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) SAL_OVERRIDE;
 
     using SfxListener::StartListening;
@@ -153,7 +153,7 @@ private:
 
 protected:
     virtual void NbcMove( const Size& rSize ) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) SAL_OVERRIDE;
 
 public:
diff --git a/basic/source/runtime/methods1.cxx b/basic/source/runtime/methods1.cxx
index 472d4b7..29f25c5 100644
--- a/basic/source/runtime/methods1.cxx
+++ b/basic/source/runtime/methods1.cxx
@@ -1340,8 +1340,8 @@ static double GetDialogZoomFactor( bool bX, long nValue )
     if( pDevice )
     {
         Size aRefSize( nValue, nValue );
-        boost::rational<long> aFracX( 1, 26 );
-        boost::rational<long> aFracY( 1, 24 );
+        boost::rational<sal_Int64> aFracX( 1, 26 );
+        boost::rational<sal_Int64> aFracY( 1, 24 );
         MapMode aMap( MAP_APPFONT, Point(), aFracX, aFracY );
         Size aScaledSize = pDevice->LogicToPixel( aRefSize, aMap );
         aRefSize = pDevice->LogicToPixel( aRefSize, MapMode(MAP_TWIP) );
diff --git a/chart2/source/controller/main/ChartController_Window.cxx b/chart2/source/controller/main/ChartController_Window.cxx
index d8fbd16..0e53cd5 100644
--- a/chart2/source/controller/main/ChartController_Window.cxx
+++ b/chart2/source/controller/main/ChartController_Window.cxx
@@ -244,8 +244,8 @@ void SAL_CALL ChartController::setPosSize(
         MapMode aNewMapMode(
                     MAP_100TH_MM,
                     Point(0,0),
-                    boost::rational<long>(nScaleXNumerator, nScaleXDenominator),
-                    boost::rational<long>(nScaleYNumerator, nScaleYDenominator) );
+                    boost::rational<sal_Int64>(nScaleXNumerator, nScaleXDenominator),
+                    boost::rational<sal_Int64>(nScaleYNumerator, nScaleYDenominator) );
         m_pChartWindow->SetMapMode(aNewMapMode);
         m_pChartWindow->setPosSizePixel( X, Y, Width, Height, Flags );
 
diff --git a/chart2/source/view/main/DrawModelWrapper.cxx b/chart2/source/view/main/DrawModelWrapper.cxx
index 65d98b6..ff0dbcf 100644
--- a/chart2/source/view/main/DrawModelWrapper.cxx
+++ b/chart2/source/view/main/DrawModelWrapper.cxx
@@ -99,7 +99,7 @@ DrawModelWrapper::DrawModelWrapper( const uno::Reference<uno::XComponentContext>
     m_pChartItemPool = ChartItemPool::CreateChartItemPool();
 
     SetScaleUnit(MAP_100TH_MM);
-    SetScaleFraction(boost::rational<long>(1, 1));
+    SetScaleFraction(boost::rational<sal_Int64>(1, 1));
     SetDefaultFontHeight(423);     // 12pt
 
     SfxItemPool* pMasterPool = &GetItemPool();
diff --git a/cui/source/tabpages/grfpage.cxx b/cui/source/tabpages/grfpage.cxx
index 59e24f9..2121a05 100644
--- a/cui/source/tabpages/grfpage.cxx
+++ b/cui/source/tabpages/grfpage.cxx
@@ -812,8 +812,8 @@ void SvxCropExample::SetFrameSize( const Size& rSz )
     if(!aFrameSize.Height())
         aFrameSize.Height() = 1;
     Size aWinSize( GetOutputSizePixel() );
-    boost::rational<long> aXScale( aWinSize.Width() * 4, aFrameSize.Width() * 5 );
-    boost::rational<long> aYScale( aWinSize.Height() * 4, aFrameSize.Height() * 5 );
+    boost::rational<sal_Int64> aXScale( aWinSize.Width() * 4, aFrameSize.Width() * 5 );
+    boost::rational<sal_Int64> aYScale( aWinSize.Height() * 4, aFrameSize.Height() * 5 );
 
     if( aYScale < aXScale )
         aXScale = aYScale;
diff --git a/cui/source/tabpages/transfrm.cxx b/cui/source/tabpages/transfrm.cxx
index ff024ad..26a8678 100644
--- a/cui/source/tabpages/transfrm.cxx
+++ b/cui/source/tabpages/transfrm.cxx
@@ -90,7 +90,7 @@ static void lcl_ConvertRect(basegfx::B2DRange& rRange, const sal_uInt16 nDigits,
     rRange = basegfx::B2DRange(aTopLeft, aBottomRight);
 }
 
-static void lcl_ScaleRect(basegfx::B2DRange& rRange, const boost::rational<long> aUIScale)
+static void lcl_ScaleRect(basegfx::B2DRange& rRange, const boost::rational<sal_Int64> aUIScale)
 {
     const double fFactor(1.0 / boost::rational_cast<double>(aUIScale));
     rRange = basegfx::B2DRange(rRange.getMinimum() * fFactor, rRange.getMaximum() * fFactor);
@@ -254,7 +254,7 @@ void SvxAngleTabPage::Construct()
     }
 
     // take scale into account
-    const boost::rational<long> aUIScale = pView->GetModel()->GetUIScale();
+    const boost::rational<sal_Int64> aUIScale = pView->GetModel()->GetUIScale();
     lcl_ScaleRect(maRange, aUIScale);
 
     // take UI units into account
@@ -475,7 +475,7 @@ bool SvxSlantTabPage::FillItemSet(SfxItemSet* rAttrs)
 
     if( m_pMtrRadius->IsValueChangedFromSaved() )
     {
-        boost::rational<long> aUIScale = pView->GetModel()->GetUIScale();
+        boost::rational<sal_Int64> aUIScale = pView->GetModel()->GetUIScale();
         long nTmp = GetCoreValue( *m_pMtrRadius, ePoolUnit );
         nTmp = boost::rational_cast<long>(nTmp * aUIScale);
 
@@ -758,7 +758,7 @@ void SvxPositionSizeTabPage::Construct()
     }
 
     // take scale into account
-    const boost::rational<long> aUIScale = mpView->GetModel()->GetUIScale();
+    const boost::rational<sal_Int64> aUIScale = mpView->GetModel()->GetUIScale();
     lcl_ScaleRect( maWorkRange, aUIScale );
     lcl_ScaleRect( maRange, aUIScale );
 
@@ -828,7 +828,7 @@ bool SvxPositionSizeTabPage::FillItemSet( SfxItemSet* rOutAttrs )
 
     if ( m_pMtrWidth->IsValueModified() || m_pMtrHeight->IsValueModified() )
     {
-        boost::rational<long> aUIScale = mpView->GetModel()->GetUIScale();
+        boost::rational<sal_Int64> aUIScale = mpView->GetModel()->GetUIScale();
 
         // get Width
         double nWidth = static_cast<double>(m_pMtrWidth->GetValue( meDlgUnit ));
diff --git a/dbaccess/source/ui/inc/JoinController.hxx b/dbaccess/source/ui/inc/JoinController.hxx
index c527a3e..cfc6036 100644
--- a/dbaccess/source/ui/inc/JoinController.hxx
+++ b/dbaccess/source/ui/inc/JoinController.hxx
@@ -47,7 +47,7 @@ namespace dbaui
         TTableConnectionData m_vTableConnectionData;
         TTableWindowData     m_vTableData;
 
-        boost::rational<long>                   m_aZoom;
+        boost::rational<sal_Int64>                   m_aZoom;
         ::dbtools::SQLExceptionInfo             m_aExceptionInfo;
 
         OAddTableDlg*                               m_pAddTableDialog;
diff --git a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
index c42b1cb..04ab97f 100644
--- a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
@@ -573,7 +573,7 @@ namespace
     basegfx::B2DHomMatrix getTransformFromMapMode(const MapMode& rMapMode)
     {
         basegfx::B2DHomMatrix aMapping;
-        const boost::rational<long> aNoScale(1, 1);
+        const boost::rational<sal_Int64> aNoScale(1, 1);
         const Point& rOrigin(rMapMode.GetOrigin());
 
         if(0 != rOrigin.X() || 0 != rOrigin.Y())
diff --git a/editeng/source/editeng/impedit3.cxx b/editeng/source/editeng/impedit3.cxx
index 4ba25a6..bf3f296 100644
--- a/editeng/source/editeng/impedit3.cxx
+++ b/editeng/source/editeng/impedit3.cxx
@@ -501,7 +501,7 @@ bool ImpEditEngine::ImpCheckRefMapMode()
 
         if ( bChange )
         {
-            boost::rational<long> Scale1( 1, 1 );
+            boost::rational<sal_Int64> Scale1( 1, 1 );
             aMapMode.SetScaleX( Scale1 );
             aMapMode.SetScaleY( Scale1 );
             GetRefDevice()->Push();
diff --git a/filter/source/graphicfilter/eos2met/eos2met.cxx b/filter/source/graphicfilter/eos2met/eos2met.cxx
index b01a978..e7285ec 100644
--- a/filter/source/graphicfilter/eos2met/eos2met.cxx
+++ b/filter/source/graphicfilter/eos2met/eos2met.cxx
@@ -2168,8 +2168,8 @@ void METWriter::WriteOrders( const GDIMetaFile* pMTF )
                     if ( pA->GetMapMode().GetMapUnit() == MAP_RELATIVE )
                     {
                         MapMode aMM = pA->GetMapMode();
-                        boost::rational<long> aScaleX = aMM.GetScaleX();
-                        boost::rational<long> aScaleY = aMM.GetScaleY();
+                        boost::rational<sal_Int64> aScaleX = aMM.GetScaleX();
+                        boost::rational<sal_Int64> aScaleY = aMM.GetScaleY();
 
                         Point aOrigin = aPictureMapMode.GetOrigin();
                         BigInt aX( aOrigin.X() );
diff --git a/filter/source/graphicfilter/epict/epict.cxx b/filter/source/graphicfilter/epict/epict.cxx
index b0f61f3..e2d1ebf 100644
--- a/filter/source/graphicfilter/epict/epict.cxx
+++ b/filter/source/graphicfilter/epict/epict.cxx
@@ -1962,8 +1962,8 @@ void PictWriter::WriteOpcodes( const GDIMetaFile & rMTF )
                     if( pA->GetMapMode().GetMapUnit() == MAP_RELATIVE )
                     {
                         MapMode aMM = pA->GetMapMode();
-                        boost::rational<long> aScaleX = aMM.GetScaleX();
-                        boost::rational<long> aScaleY = aMM.GetScaleY();
+                        boost::rational<sal_Int64> aScaleX = aMM.GetScaleX();
+                        boost::rational<sal_Int64> aScaleY = aMM.GetScaleY();
 
                         Point aOrigin = aSrcMapMode.GetOrigin();
                         BigInt aX( aOrigin.X() );
@@ -2183,7 +2183,7 @@ bool PictWriter::WritePict(const GDIMetaFile & rMTF, SvStream & rTargetStream, F
 {
     PictWriterAttrStackMember*  pAt;
     MapMode                     aMap72( MAP_INCH );
-    boost::rational<long>       aDPIFrac( 1, 72 );
+    boost::rational<sal_Int64>       aDPIFrac( 1, 72 );
 
     bStatus=true;
     nLastPercent=0;
diff --git a/filter/source/graphicfilter/ios2met/ios2met.cxx b/filter/source/graphicfilter/ios2met/ios2met.cxx
index 1568ef9..a23d0cc 100644
--- a/filter/source/graphicfilter/ios2met/ios2met.cxx
+++ b/filter/source/graphicfilter/ios2met/ios2met.cxx
@@ -2125,9 +2125,9 @@ void OS2METReader::ReadDsc(sal_uInt16 nDscID, sal_uInt16 /*nDscLen*/)
             ReadCoord(b32);
 
             if (nUnitType==0x00 && xr>0 && yr>0)
-                aGlobMapMode=MapMode(MAP_INCH,Point(0,0),boost::rational<long>(10,xr),boost::rational<long>(10,yr));
+                aGlobMapMode=MapMode(MAP_INCH,Point(0,0),boost::rational<sal_Int64>(10,xr),boost::rational<sal_Int64>(10,yr));
             else if (nUnitType==0x01 && xr>0 && yr>0)
-                aGlobMapMode=MapMode(MAP_CM,Point(0,0),boost::rational<long>(10,xr),boost::rational<long>(10,yr));
+                aGlobMapMode=MapMode(MAP_CM,Point(0,0),boost::rational<sal_Int64>(10,xr),boost::rational<sal_Int64>(10,yr));
             else
                 aGlobMapMode=MapMode();
 
diff --git a/filter/source/graphicfilter/ipict/ipict.cxx b/filter/source/graphicfilter/ipict/ipict.cxx
index b0d07d8..89a2aee 100644
--- a/filter/source/graphicfilter/ipict/ipict.cxx
+++ b/filter/source/graphicfilter/ipict/ipict.cxx
@@ -166,8 +166,8 @@ private:
     Size          aActOvalSize;
     vcl::Font     aActFont;
 
-    boost::rational<long>        aHRes;
-    boost::rational<long>        aVRes;
+    boost::rational<sal_Int64>        aHRes;
+    boost::rational<sal_Int64>        aVRes;
 
     bool Callback(sal_uInt16 nPercent);
 
@@ -1841,7 +1841,7 @@ void PictReader::ReadPict( SvStream & rStreamPict, GDIMetaFile & rGDIMetaFile )
     aActFont.SetSize(Size(0,12));
     aActFont.SetAlign(ALIGN_BASELINE);
 
-    aHRes = aVRes = boost::rational<long>( 1, 1 );
+    aHRes = aVRes = boost::rational<sal_Int64>( 1, 1 );
 
     pVirDev = new VirtualDevice();
     pVirDev->EnableOutput(false);
diff --git a/filter/source/graphicfilter/ipsd/ipsd.cxx b/filter/source/graphicfilter/ipsd/ipsd.cxx
index dbba04c..7f4bfc7 100644
--- a/filter/source/graphicfilter/ipsd/ipsd.cxx
+++ b/filter/source/graphicfilter/ipsd/ipsd.cxx
@@ -148,8 +148,8 @@ bool PSDReader::ReadPSD(Graphic & rGraphic )
         if ( mnXResFixed && mnYResFixed )
         {
             Point       aEmptyPoint;
-            boost::rational<long>    aFractX( 1, mnXResFixed >> 16 );
-            boost::rational<long>    aFractY( 1, mnYResFixed >> 16 );
+            boost::rational<sal_Int64>    aFractX( 1, mnXResFixed >> 16 );
+            boost::rational<sal_Int64>    aFractY( 1, mnYResFixed >> 16 );
             MapMode     aMapMode( MAP_INCH, aEmptyPoint, aFractX, aFractY );
             Size        aPrefSize = OutputDevice::LogicToLogic( aBitmapSize, aMapMode, MAP_100TH_MM );
             rGraphic.SetPrefSize( aPrefSize );
diff --git a/filter/source/graphicfilter/itiff/itiff.cxx b/filter/source/graphicfilter/itiff/itiff.cxx
index 82575a5..c2c752f 100644
--- a/filter/source/graphicfilter/itiff/itiff.cxx
+++ b/filter/source/graphicfilter/itiff/itiff.cxx
@@ -1127,7 +1127,7 @@ void TIFFReader::MakePalCol( void )
             nRX=(sal_uLong)(fXResolution*2.54+0.5);
             nRY=(sal_uLong)(fYResolution*2.54+0.5);
         }
-        MapMode aMapMode(MAP_INCH,Point(0,0),boost::rational<long>(1,nRX),boost::rational<long>(1,nRY));
+        MapMode aMapMode(MAP_INCH,Point(0,0),boost::rational<sal_Int64>(1,nRX),boost::rational<sal_Int64>(1,nRY));
         aBitmap.SetPrefMapMode(aMapMode);
         aBitmap.SetPrefSize(Size(nImageWidth,nImageLength));
     }
diff --git a/filter/source/msfilter/eschesdo.cxx b/filter/source/msfilter/eschesdo.cxx
index 0c2b757..a5db54a 100644
--- a/filter/source/msfilter/eschesdo.cxx
+++ b/filter/source/msfilter/eschesdo.cxx
@@ -64,7 +64,7 @@ ImplEESdrWriter::ImplEESdrWriter( EscherEx& rEx )
     : mpEscherEx(&rEx)
     , maMapModeSrc(MAP_100TH_MM)
     // PowerPoint: 576 dpi, WinWord: 1440 dpi, Excel: 1440 dpi
-    , maMapModeDest( MAP_INCH, Point(), boost::rational<long>( 1, EES_MAP_FRACTION ), boost::rational<long>( 1, EES_MAP_FRACTION ) )
+    , maMapModeDest( MAP_INCH, Point(), boost::rational<sal_Int64>( 1, EES_MAP_FRACTION ), boost::rational<sal_Int64>( 1, EES_MAP_FRACTION ) )
     , mpPicStrm(NULL)
     , mpHostAppData(NULL)
     , mnPagesWritten(0)
diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx
index 96b5554..fe65386 100644
--- a/filter/source/msfilter/msdffimp.cxx
+++ b/filter/source/msfilter/msdffimp.cxx
@@ -170,9 +170,9 @@ void Impl_OlePres::Write( SvStream & rStm )
     {
         // Always to 1/100 mm, until Mtf-Solution found
         // Assumption (no scaling, no origin translation)
-        DBG_ASSERT( pMtf->GetPrefMapMode().GetScaleX() == boost::rational<long>( 1, 1 ),
+        DBG_ASSERT( pMtf->GetPrefMapMode().GetScaleX() == boost::rational<sal_Int64>( 1, 1 ),
                     "X-Skalierung im Mtf" );
-        DBG_ASSERT( pMtf->GetPrefMapMode().GetScaleY() == boost::rational<long>( 1, 1 ),
+        DBG_ASSERT( pMtf->GetPrefMapMode().GetScaleY() == boost::rational<sal_Int64>( 1, 1 ),
                     "Y-Skalierung im Mtf" );
         DBG_ASSERT( pMtf->GetPrefMapMode().GetOrigin() == Point(),
                     "Origin-Verschiebung im Mtf" );
@@ -183,8 +183,8 @@ void Impl_OlePres::Write( SvStream & rStm )
             Size aS( aPrefS );
             aS = OutputDevice::LogicToLogic( aS, nMU, MAP_100TH_MM );
 
-            pMtf->Scale( boost::rational<long>( aS.Width(), aPrefS.Width() ),
-                         boost::rational<long>( aS.Height(), aPrefS.Height() ) );
+            pMtf->Scale( boost::rational<sal_Int64>( aS.Width(), aPrefS.Width() ),
+                         boost::rational<sal_Int64>( aS.Height(), aPrefS.Height() ) );
             pMtf->SetPrefMapMode( MAP_100TH_MM );
             pMtf->SetPrefSize( aS );
         }
@@ -3088,10 +3088,10 @@ void SvxMSDffManager::ScaleEmu( sal_Int32& rVal ) const
 sal_uInt32 SvxMSDffManager::ScalePt( sal_uInt32 nVal ) const
 {
     MapUnit eMap = pSdrModel->GetScaleUnit();
-    boost::rational<long> aFact( GetMapFactor( MAP_POINT, eMap ).X() );
+    boost::rational<sal_Int64> aFact( GetMapFactor( MAP_POINT, eMap ).X() );
     long aMul = aFact.numerator();
     long aDiv = aFact.denominator() * 65536;
-    aFact = boost::rational<long>( aMul, aDiv ); // try again to shorten it
+    aFact = boost::rational<sal_Int64>( aMul, aDiv ); // try again to shorten it
     return BigMulDiv( nVal, aFact.numerator(), aFact.denominator() );
 }
 
@@ -3108,10 +3108,10 @@ void SvxMSDffManager::SetModel(SdrModel* pModel, long nApplicationScale)
         // PPT works in units of 576DPI
         // WW on the other side uses twips, i.e. 1440DPI.
         MapUnit eMap = pSdrModel->GetScaleUnit();
-        boost::rational<long> aFact = GetMapFactor(MAP_INCH, eMap).X();
+        boost::rational<sal_Int64> aFact = GetMapFactor(MAP_INCH, eMap).X();
         long nMul=aFact.numerator();
         long nDiv=aFact.denominator()*nApplicationScale;
-        aFact=boost::rational<long>(nMul,nDiv); // try again to shorten it
+        aFact=boost::rational<sal_Int64>(nMul,nDiv); // try again to shorten it
         // For 100TH_MM -> 2540/576=635/144
         // For Twip     -> 1440/576=5/2
         nMapMul  = aFact.numerator();
@@ -3123,7 +3123,7 @@ void SvxMSDffManager::SetModel(SdrModel* pModel, long nApplicationScale)
         aFact=GetMapFactor(MAP_100TH_MM,eMap).X();
         nMul=aFact.numerator();
         nDiv=aFact.denominator()*360;
-        aFact=boost::rational<long>(nMul,nDiv); // try again to shorten it
+        aFact=boost::rational<sal_Int64>(nMul,nDiv); // try again to shorten it
         // For 100TH_MM ->                            1/360
         // For Twip     -> 14,40/(25,4*360)=144/91440=1/635
         nEmuMul=aFact.numerator();
diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx
index a8c55bf..fba076a 100644
--- a/filter/source/msfilter/svdfppt.cxx
+++ b/filter/source/msfilter/svdfppt.cxx
@@ -2474,7 +2474,7 @@ Size SdrPowerPointImport::GetPageSize() const
         long nInchMul = 1, nInchDiv = 1;
         if ( bInch )
         {   // temporarily convert size (for rounding it) from inch to metric units
-            boost::rational<long> aFact = GetMapFactor(eMap,MAP_100TH_MM).X();
+            boost::rational<sal_Int64> aFact = GetMapFactor(eMap,MAP_100TH_MM).X();
             nInchMul = aFact.numerator();
             nInchDiv = aFact.denominator();
             aRet.Width() = BigMulDiv( aRet.Width(), nInchMul, nInchDiv );
diff --git a/filter/source/svg/svgwriter.cxx b/filter/source/svg/svgwriter.cxx
index 6dff611..0922a59 100644
--- a/filter/source/svg/svgwriter.cxx
+++ b/filter/source/svg/svgwriter.cxx
@@ -3583,14 +3583,14 @@ void SVGActionWriter::WriteMetaFile( const Point& rPos100thmm,
 {
     MapMode     aMapMode( rMtf.GetPrefMapMode() );
     Size        aPrefSize( rMtf.GetPrefSize() );
-    boost::rational<long>    aFractionX = aMapMode.GetScaleX();
-    boost::rational<long>    aFractionY = aMapMode.GetScaleY();
+    boost::rational<sal_Int64>    aFractionX = aMapMode.GetScaleX();
+    boost::rational<sal_Int64>    aFractionY = aMapMode.GetScaleY();
 
     mpVDev->Push();
 
     Size aSize( OutputDevice::LogicToLogic( rSize100thmm, MAP_100TH_MM, aMapMode ) );
-    aMapMode.SetScaleX( aFractionX *= boost::rational<long>( aSize.Width(), aPrefSize.Width() ) );
-    aMapMode.SetScaleY( aFractionY *= boost::rational<long>( aSize.Height(), aPrefSize.Height() ) );
+    aMapMode.SetScaleX( aFractionX *= boost::rational<sal_Int64>( aSize.Width(), aPrefSize.Width() ) );
+    aMapMode.SetScaleY( aFractionY *= boost::rational<sal_Int64>( aSize.Height(), aPrefSize.Height() ) );
 
     Point aOffset( OutputDevice::LogicToLogic( rPos100thmm, MAP_100TH_MM, aMapMode ) );
     aMapMode.SetOrigin( aOffset += aMapMode.GetOrigin() );
diff --git a/forms/source/richtext/richtextimplcontrol.cxx b/forms/source/richtext/richtextimplcontrol.cxx
index 1e84f1b..068db8c 100644
--- a/forms/source/richtext/richtextimplcontrol.cxx
+++ b/forms/source/richtext/richtextimplcontrol.cxx
@@ -515,7 +515,7 @@ namespace frm
 
     void RichTextControlImpl::notifyZoomChanged()
     {
-        const boost::rational<long>& rZoom = m_pAntiImpl->GetZoom();
+        const boost::rational<sal_Int64>& rZoom = m_pAntiImpl->GetZoom();
 
         MapMode aMapMode( m_pAntiImpl->GetMapMode() );
         aMapMode.SetScaleX( rZoom );
diff --git a/include/oox/export/chartexport.hxx b/include/oox/export/chartexport.hxx
index 74f9236..eff1b4b 100644
--- a/include/oox/export/chartexport.hxx
+++ b/include/oox/export/chartexport.hxx
@@ -84,7 +84,7 @@ public:
 private:
     sal_Int32           mnXmlNamespace;
     sal_Int32           mnSeriesCount;
-    boost::rational<long>            maFraction;
+    boost::rational<sal_Int64>            maFraction;
     ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > mxChartModel;
     com::sun::star::uno::Reference< com::sun::star::chart::XDiagram > mxDiagram;
     com::sun::star::uno::Reference< com::sun::star::chart2::XDiagram > mxNewDiagram;
diff --git a/include/oox/export/shapes.hxx b/include/oox/export/shapes.hxx
index 250729b..1846b07 100644
--- a/include/oox/export/shapes.hxx
+++ b/include/oox/export/shapes.hxx
@@ -66,7 +66,7 @@ protected:
 
 private:
     sal_Int32           mnXmlNamespace;
-    boost::rational<long>            maFraction;
+    boost::rational<sal_Int64>            maFraction;
     MapMode             maMapModeSrc, maMapModeDest;
 
     ::com::sun::star::awt::Size MapSize( const ::com::sun::star::awt::Size& ) const;
diff --git a/include/sfx2/ipclient.hxx b/include/sfx2/ipclient.hxx
index 573d899..a4d440f 100644
--- a/include/sfx2/ipclient.hxx
+++ b/include/sfx2/ipclient.hxx
@@ -73,10 +73,10 @@ public:
     bool                SetObjArea( const Rectangle & );
     Rectangle           GetObjArea() const;
     Rectangle           GetScaledObjArea() const;
-    void                SetSizeScale( const boost::rational<long> & rScaleWidth, const boost::rational<long> & rScaleHeight );
-    bool                SetObjAreaAndScale( const Rectangle&, const boost::rational<long>&, const boost::rational<long>& );
-    const boost::rational<long>&     GetScaleWidth() const;
-    const boost::rational<long>&     GetScaleHeight() const;
+    void                SetSizeScale( const boost::rational<sal_Int64> & rScaleWidth, const boost::rational<sal_Int64> & rScaleHeight );
+    bool                SetObjAreaAndScale( const Rectangle&, const boost::rational<sal_Int64>&, const boost::rational<sal_Int64>& );
+    const boost::rational<sal_Int64>&     GetScaleWidth() const;
+    const boost::rational<sal_Int64>&     GetScaleHeight() const;
     void                Invalidate();
     static SfxInPlaceClient* GetClient( SfxObjectShell* pDoc, const com::sun::star::uno::Reference < com::sun::star::embed::XEmbeddedObject >& xObject );
     sal_Int64           GetAspect() const;
diff --git a/include/sfx2/objsh.hxx b/include/sfx2/objsh.hxx
index 42487bc..df0a32a 100644
--- a/include/sfx2/objsh.hxx
+++ b/include/sfx2/objsh.hxx
@@ -638,8 +638,8 @@ public:
 
     SAL_DLLPRIVATE void DoDraw_Impl( OutputDevice* pDev,
                                             const Point & rViewPos,
-                                            const boost::rational<long>& rScaleX,
-                                            const boost::rational<long>& rScaleY,
+                                            const boost::rational<sal_Int64>& rScaleX,
+                                            const boost::rational<sal_Int64>& rScaleY,
                                             const JobSetup & rSetup,
                                             sal_uInt16 nAspect );
 
diff --git a/include/sfx2/viewfrm.hxx b/include/sfx2/viewfrm.hxx
index 426a9fd..fdfde8e 100644
--- a/include/sfx2/viewfrm.hxx
+++ b/include/sfx2/viewfrm.hxx
@@ -119,7 +119,7 @@ public:
     SfxBindings&            GetBindings() { return *pBindings; }
     const SfxBindings&      GetBindings() const  { return *pBindings; }
     vcl::Window&                 GetWindow() const;
-    virtual void            SetZoomFactor( const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY );
+    virtual void            SetZoomFactor( const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY );
 
     SfxProgress*            GetProgress() const;
 
diff --git a/include/sfx2/viewsh.hxx b/include/sfx2/viewsh.hxx
index 39e5f2c..d47ea27 100644
--- a/include/sfx2/viewsh.hxx
+++ b/include/sfx2/viewsh.hxx
@@ -146,7 +146,7 @@ protected:
 
     virtual void                InnerResizePixel( const Point &rOfs, const Size &rSize );
     virtual void                OuterResizePixel( const Point &rOfs, const Size &rSize );
-    virtual void                SetZoomFactor( const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY );
+    virtual void                SetZoomFactor( const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY );
 
     virtual void                Move();
 
diff --git a/include/svtools/imap.hxx b/include/svtools/imap.hxx
index 29b5de5..79bbb61 100644
--- a/include/svtools/imap.hxx
+++ b/include/svtools/imap.hxx
@@ -117,7 +117,7 @@ public:
     void                SetName( const OUString& rName ) { aName = rName; }
 
     // skaliert alle Objekte der ImageMap entpr. dem uebergebenen Faktor
-    void                Scale( const boost::rational<long>& rFractX, const boost::rational<long>& rFracY );
+    void                Scale( const boost::rational<sal_Int64>& rFractX, const boost::rational<sal_Int64>& rFracY );
 
     // Im-/Export
     void                Write ( SvStream& rOStm, const OUString& rBaseURL ) const;
diff --git a/include/svtools/imapcirc.hxx b/include/svtools/imapcirc.hxx
index 003a2e1..23b58a3 100644
--- a/include/svtools/imapcirc.hxx
+++ b/include/svtools/imapcirc.hxx
@@ -60,7 +60,7 @@ public:
     // liefert das BoundRect des Kreis-Objektes in 1/100mm
     virtual Rectangle   GetBoundRect() const SAL_OVERRIDE;
 
-    void                Scale( const boost::rational<long>& rFractX, const boost::rational<long>& rFracY );
+    void                Scale( const boost::rational<sal_Int64>& rFractX, const boost::rational<sal_Int64>& rFracY );
 
     using IMapObject::IsEqual;
     bool                IsEqual( const IMapCircleObject& rEqObj );
diff --git a/include/svtools/imappoly.hxx b/include/svtools/imappoly.hxx
index 40fff04..23c23fb 100644
--- a/include/svtools/imappoly.hxx
+++ b/include/svtools/imappoly.hxx
@@ -66,7 +66,7 @@ public:
     const Rectangle&    GetExtraEllipse() const { return aEllipse; }
     void                SetExtraEllipse( const Rectangle& rEllipse );
 
-    void                Scale( const boost::rational<long>& rFractX, const boost::rational<long>& rFracY );
+    void                Scale( const boost::rational<sal_Int64>& rFractX, const boost::rational<sal_Int64>& rFracY );
 
     using IMapObject::IsEqual;
     bool                IsEqual( const IMapPolygonObject& rEqObj );
diff --git a/include/svtools/imaprect.hxx b/include/svtools/imaprect.hxx
index 48dff3c..b1c0633 100644
--- a/include/svtools/imaprect.hxx
+++ b/include/svtools/imaprect.hxx
@@ -58,7 +58,7 @@ public:
     // liefert das BoundRect des Rechteck-Objektes in 1/100mm
     virtual Rectangle   GetBoundRect() const SAL_OVERRIDE { return aRect; }
 
-    void                Scale( const boost::rational<long>& rFractX, const boost::rational<long>& rFracY );
+    void                Scale( const boost::rational<sal_Int64>& rFractX, const boost::rational<sal_Int64>& rFracY );
 
     using IMapObject::IsEqual;
     bool                IsEqual( const IMapRectangleObject& rEqObj );
diff --git a/include/svtools/ruler.hxx b/include/svtools/ruler.hxx
index a27a921..cf31b16 100644
--- a/include/svtools/ruler.hxx
+++ b/include/svtools/ruler.hxx
@@ -644,7 +644,7 @@ private:
     RulerType       meDragType;
     MapUnit         meSourceUnit;
     FieldUnit       meUnit;
-    boost::rational<long>        maZoom;
+    boost::rational<sal_Int64>        maZoom;
     bool            mbCalc;
     bool            mbFormat;
     bool            mbDrag;
@@ -745,8 +745,8 @@ public:
 
     void            SetUnit( FieldUnit eNewUnit );
     FieldUnit       GetUnit() const { return meUnit; }
-    void            SetZoom( const boost::rational<long>& rNewZoom );
-    boost::rational<long>        GetZoom() const { return maZoom; }
+    void            SetZoom( const boost::rational<sal_Int64>& rNewZoom );
+    boost::rational<sal_Int64>        GetZoom() const { return maZoom; }
 
     void            SetSourceUnit( MapUnit eNewUnit ) { meSourceUnit = eNewUnit; }
     MapUnit         GetSourceUnit() const { return meSourceUnit; }
diff --git a/include/svx/obj3d.hxx b/include/svx/obj3d.hxx
index c1e3796..66fac19 100644
--- a/include/svx/obj3d.hxx
+++ b/include/svx/obj3d.hxx
@@ -153,7 +153,7 @@ public:
     virtual void        SetPage(SdrPage* pNewPage) SAL_OVERRIDE;
     virtual void        SetModel(SdrModel* pNewModel) SAL_OVERRIDE;
     virtual void        NbcMove(const Size& rSize) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual SdrObjList* GetSubList() const SAL_OVERRIDE;
 
     // Insert 3D object into the group; transfer to other owner!
diff --git a/include/svx/scene3d.hxx b/include/svx/scene3d.hxx
index b519126..11a9fd7 100644
--- a/include/svx/scene3d.hxx
+++ b/include/svx/scene3d.hxx
@@ -191,8 +191,8 @@ public:
 
     virtual void    NbcSetSnapRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual void    NbcMove(const Size& rSize) SAL_OVERRIDE;
-    virtual void    NbcResize(const Point& rRef, const boost::rational<long>& rXFact,
-                                                 const boost::rational<long>& rYFact) SAL_OVERRIDE;
+    virtual void    NbcResize(const Point& rRef, const boost::rational<sal_Int64>& rXFact,
+                                                 const boost::rational<sal_Int64>& rYFact) SAL_OVERRIDE;
     virtual void    RecalcSnapRect() SAL_OVERRIDE;
 
     virtual E3dScene* GetScene() const SAL_OVERRIDE;
diff --git a/include/svx/sdr/properties/defaultproperties.hxx b/include/svx/sdr/properties/defaultproperties.hxx
index 9e9defe..1dd12a6 100644
--- a/include/svx/sdr/properties/defaultproperties.hxx
+++ b/include/svx/sdr/properties/defaultproperties.hxx
@@ -94,7 +94,7 @@ namespace sdr
             virtual void ForceDefaultAttributes();
 
             // Scale the included ItemSet.
-            virtual void Scale(const boost::rational<long>& rScale) SAL_OVERRIDE;
+            virtual void Scale(const boost::rational<sal_Int64>& rScale) SAL_OVERRIDE;
         };
     } // end of namespace properties
 } // end of namespace sdr
diff --git a/include/svx/sdr/properties/properties.hxx b/include/svx/sdr/properties/properties.hxx
index 6ce22f6..73471da 100644
--- a/include/svx/sdr/properties/properties.hxx
+++ b/include/svx/sdr/properties/properties.hxx
@@ -147,7 +147,7 @@ namespace sdr
 
             // Scale the local ItemSet as far as it contains metric items. This needs to be
             // overloaded to do it for hierarchical objects like e.g. groups.
-            virtual void Scale(const boost::rational<long>& rScale);
+            virtual void Scale(const boost::rational<sal_Int64>& rScale);
 
             // Move local items to a new ItemPool. This needs to be
             // overloaded to do it for hierarchical objects like e.g. groups.
diff --git a/include/svx/svddrag.hxx b/include/svx/svddrag.hxx
index 1a11e0c..aff0ef4 100644
--- a/include/svx/svddrag.hxx
+++ b/include/svx/svddrag.hxx
@@ -146,8 +146,8 @@ public:
     bool CheckMinMoved(const Point& rPnt);
     long  GetDX() const                     { return GetNow().X()-GetPrev().X(); }
     long  GetDY() const                     { return GetNow().Y()-GetPrev().Y(); }
-    boost::rational<long> GetXFact() const;
-    boost::rational<long> GetYFact() const;
+    boost::rational<sal_Int64> GetXFact() const;
+    boost::rational<sal_Int64> GetYFact() const;
 
     SdrDragMethod* GetDragMethod() const               { return pDragMethod; }
     void           SetDragMethod(SdrDragMethod* pMth)  { pDragMethod=pMth; }
diff --git a/include/svx/svddrgmt.hxx b/include/svx/svddrgmt.hxx
index ad37eee..b267857 100644
--- a/include/svx/svddrgmt.hxx
+++ b/include/svx/svddrgmt.hxx
@@ -258,8 +258,8 @@ public:
 class SVX_DLLPUBLIC SdrDragResize : public SdrDragMethod
 {
 protected:
-    boost::rational<long>       aXFact;
-    boost::rational<long>       aYFact;
+    boost::rational<sal_Int64>       aXFact;
+    boost::rational<sal_Int64>       aYFact;
 
 public:
     TYPEINFO_OVERRIDE();
diff --git a/include/svx/svdedtv.hxx b/include/svx/svdedtv.hxx
index 12b27b8..d2ddc39 100644
--- a/include/svx/svdedtv.hxx
+++ b/include/svx/svdedtv.hxx
@@ -212,8 +212,8 @@ public:
     // waagerechte Linie hat z.B. immer eine Hoehe von 0.
     void SetMarkedObjRect(const Rectangle& rRect, bool bCopy=false);
     void MoveMarkedObj(const Size& rSiz, bool bCopy=false);
-    void ResizeMarkedObj(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bCopy=false);
-    void ResizeMultMarkedObj(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, const bool bCopy, const bool bWdh, const bool bHgt);
+    void ResizeMarkedObj(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bCopy=false);
+    void ResizeMultMarkedObj(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, const bool bCopy, const bool bWdh, const bool bHgt);
     long GetMarkedObjRotate() const;
     void RotateMarkedObj(const Point& rRef, long nWink, bool bCopy=false);
     void MirrorMarkedObj(const Point& rRef1, const Point& rRef2, bool bCopy=false);
@@ -228,7 +228,7 @@ public:
     void CopyMarkedObj();
     void SetAllMarkedRect(const Rectangle& rRect, bool bCopy=false) { SetMarkedObjRect(rRect,bCopy); }
     void MoveAllMarked(const Size& rSiz, bool bCopy=false) { MoveMarkedObj   (rSiz,bCopy); }
-    void ResizeAllMarked(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bCopy=false) { ResizeMarkedObj (rRef,xFact,yFact,bCopy); }
+    void ResizeAllMarked(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bCopy=false) { ResizeMarkedObj (rRef,xFact,yFact,bCopy); }
     long GetAllMarkedRotate() const { return GetMarkedObjRotate(); }
     void RotateAllMarked(const Point& rRef, long nWink, bool bCopy=false) { RotateMarkedObj(rRef,nWink,bCopy); }
     void MirrorAllMarked(const Point& rRef1, const Point& rRef2, bool bCopy=false) { MirrorMarkedObj(rRef1,rRef2,bCopy); }
diff --git a/include/svx/svdetc.hxx b/include/svx/svdetc.hxx
index 2ec177c..fb12c8f 100644
--- a/include/svx/svdetc.hxx
+++ b/include/svx/svdetc.hxx
@@ -62,7 +62,7 @@ friend class SdrAttrObj;
     Color      aFontColor;
     sal_uIntPtr      nFontHeight;
     MapUnit    eMapUnit;
-    boost::rational<long>   aMapFraction;
+    boost::rational<sal_Int64>   aMapFraction;
 
 private:
     static SdrEngineDefaults& GetDefaults();
@@ -92,8 +92,8 @@ public:
     static void       SetMapUnit(MapUnit eMap)             { GetDefaults().eMapUnit=eMap; }
     static MapUnit    GetMapUnit()                         { return GetDefaults().eMapUnit; }
     // Default MapFraction ist 1/1.
-    static void       SetMapFraction(const boost::rational<long>& rMap) { GetDefaults().aMapFraction=rMap; }
-    static boost::rational<long>   GetMapFraction()                     { return GetDefaults().aMapFraction; }
+    static void       SetMapFraction(const boost::rational<sal_Int64>& rMap) { GetDefaults().aMapFraction=rMap; }
+    static boost::rational<sal_Int64>   GetMapFraction()                     { return GetDefaults().aMapFraction; }
 
     // Einen Outliner mit den engineglobalen
     // Defaulteinstellungen auf dem Heap erzeugen.
diff --git a/include/svx/svdglev.hxx b/include/svx/svdglev.hxx
index b1576bd..a7dd3f3 100644
--- a/include/svx/svdglev.hxx
+++ b/include/svx/svdglev.hxx
@@ -78,7 +78,7 @@ public:
     void DeleteMarkedGluePoints();
 
     void MoveMarkedGluePoints  (const Size& rSiz, bool bCopy=false);
-    void ResizeMarkedGluePoints(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bCopy=false);
+    void ResizeMarkedGluePoints(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bCopy=false);
     void RotateMarkedGluePoints(const Point& rRef, long nWink, bool bCopy=false);
     void MirrorMarkedGluePoints(const Point& rRef1, const Point& rRef2, bool bCopy=false);
     void MirrorMarkedGluePointsHorizontal(bool bCopy=false);
diff --git a/include/svx/svdmodel.hxx b/include/svx/svdmodel.hxx
index 850185e..3be9def 100644
--- a/include/svx/svdmodel.hxx
+++ b/include/svx/svdmodel.hxx
@@ -155,12 +155,12 @@ protected:
     Link           aIOProgressLink;
     OUString       aTablePath;
     Size           aMaxObjSize; // e.g. for auto-growing text
-    boost::rational<long>       aObjUnit;   // description of the coordinate units for ClipBoard, Drag&Drop, ...
+    boost::rational<sal_Int64>       aObjUnit;   // description of the coordinate units for ClipBoard, Drag&Drop, ...
     MapUnit        eObjUnit;   // see above
     FieldUnit      eUIUnit;      // unit, scale (e.g. 1/1000) for the UI (status bar) is set by ImpSetUIUnit()
-    boost::rational<long>       aUIScale;     // see above
+    boost::rational<sal_Int64>       aUIScale;     // see above
     OUString       aUIUnitStr;   // see above
-    boost::rational<long>       aUIUnitFact;  // see above
+    boost::rational<sal_Int64>       aUIUnitFact;  // see above
     int            nUIUnitKomma; // see above
 
     SdrLayerAdmin*  pLayerAdmin;
@@ -374,10 +374,10 @@ public:
     // with the correct sizes.
     MapUnit          GetScaleUnit() const                       { return eObjUnit; }
     void             SetScaleUnit(MapUnit eMap);
-    const boost::rational<long>&  GetScaleFraction() const      { return aObjUnit; }
-    void             SetScaleFraction(const boost::rational<long>& rFrac);
+    const boost::rational<sal_Int64>&  GetScaleFraction() const      { return aObjUnit; }
+    void             SetScaleFraction(const boost::rational<sal_Int64>& rFrac);
     // Setting both simultaneously performs a little better
-    void             SetScaleUnit(MapUnit eMap, const boost::rational<long>& rFrac);
+    void             SetScaleUnit(MapUnit eMap, const boost::rational<sal_Int64>& rFrac);
 
     // maximal size e.g. for auto growing texts
     const Size&      GetMaxObjSize() const                      { return aMaxObjSize; }
@@ -387,12 +387,12 @@ public:
     void             SetUIUnit(FieldUnit eUnit);
     FieldUnit        GetUIUnit() const                          { return eUIUnit; }
     // The scale of the drawing. Default 1/1.
-    void             SetUIScale(const boost::rational<long>& rScale);
-    const boost::rational<long>&  GetUIScale() const            { return aUIScale; }
+    void             SetUIScale(const boost::rational<sal_Int64>& rScale);
+    const boost::rational<sal_Int64>&  GetUIScale() const            { return aUIScale; }
     // Setting both simultaneously performs a little better
-    void             SetUIUnit(FieldUnit eUnit, const boost::rational<long>& rScale);
+    void             SetUIUnit(FieldUnit eUnit, const boost::rational<sal_Int64>& rScale);
 
-    const boost::rational<long>&  GetUIUnitFact() const         { return aUIUnitFact; }
+    const boost::rational<sal_Int64>&  GetUIUnitFact() const         { return aUIUnitFact; }
     const OUString&  GetUIUnitStr() const                       { return aUIUnitStr; }
     int              GetUIUnitKomma() const                     { return nUIUnitKomma; }
     bool             IsUIOnlyKomma() const                      { return bUIOnlyKomma; }
@@ -400,7 +400,7 @@ public:
     static void      TakeUnitStr(FieldUnit eUnit, OUString& rStr);
     void             TakeMetricStr(long nVal, OUString& rStr, bool bNoUnitChars = false, sal_Int32 nNumDigits = -1) const;
     void             TakeWinkStr(long nWink, OUString& rStr, bool bNoDegChar = false) const;
-    void             TakePercentStr(const boost::rational<long>& rVal, OUString& rStr, bool bNoPercentChar = false) const;
+    void             TakePercentStr(const boost::rational<sal_Int64>& rVal, OUString& rStr, bool bNoPercentChar = false) const;
 
     // RecalcPageNums is ordinarily only called by the Page.
     bool         IsPagNumsDirty() const                     { return bPagNumsDirty; };
diff --git a/include/svx/svdoashp.hxx b/include/svx/svdoashp.hxx
index bca9283..1d80eeb 100644
--- a/include/svx/svdoashp.hxx
+++ b/include/svx/svdoashp.hxx
@@ -188,13 +188,13 @@ public:
     virtual const Rectangle& GetLogicRect() const SAL_OVERRIDE;
 
     virtual void Move(const Size& rSiz) SAL_OVERRIDE;
-    virtual void Resize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bUnsetRelative = true) SAL_OVERRIDE;
+    virtual void Resize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bUnsetRelative = true) SAL_OVERRIDE;
     virtual void Shear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
     virtual void SetSnapRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual void SetLogicRect(const Rectangle& rRect) SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdobj.hxx b/include/svx/svdobj.hxx
index f1dc3a3..aa5344e 100644
--- a/include/svx/svdobj.hxx
+++ b/include/svx/svdobj.hxx
@@ -672,13 +672,13 @@ public:
     // Objekte sollten i.d.R. nur die Nbc-Methoden ueberladen.
     // Nbc bedeutet: 'NoBroadcast'.
     virtual void NbcMove  (const Size& rSiz);
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact);
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact);
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs);
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2);
     virtual void NbcShear (const Point& rRef, long nWink, double tn, bool bVShear);
 
     virtual void Move  (const Size& rSiz);
-    virtual void Resize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bUnsetRelative = true);
+    virtual void Resize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bUnsetRelative = true);
     virtual void Rotate(const Point& rRef, long nWink, double sn, double cs);
     virtual void Mirror(const Point& rRef1, const Point& rRef2);
     virtual void Shear (const Point& rRef, long nWink, double tn, bool bVShear);
diff --git a/include/svx/svdocapt.hxx b/include/svx/svdocapt.hxx
index a10b0f7..4efcde5 100644
--- a/include/svx/svdocapt.hxx
+++ b/include/svx/svdocapt.hxx
@@ -116,7 +116,7 @@ public:
     virtual Pointer GetCreatePointer() const SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
 
     virtual void NbcSetRelativePos(const Point& rPnt) SAL_OVERRIDE;
     virtual Point GetRelativePos() const SAL_OVERRIDE;
diff --git a/include/svx/svdocirc.hxx b/include/svx/svdocirc.hxx
index 036a4be..ea90a4b 100644
--- a/include/svx/svdocirc.hxx
+++ b/include/svx/svdocirc.hxx
@@ -112,7 +112,7 @@ public:
     virtual basegfx::B2DPolyPolygon TakeCreatePoly(const SdrDragStat& rDrag) const SAL_OVERRIDE;
     virtual Pointer GetCreatePointer() const SAL_OVERRIDE;
     virtual void NbcMove(const Size& aSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear (const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
     virtual SdrObject* DoConvertToPolyObj(bool bBezier, bool bAddText) const SAL_OVERRIDE;
diff --git a/include/svx/svdoedge.hxx b/include/svx/svdoedge.hxx
index 8161ca5..cc5090c 100644
--- a/include/svx/svdoedge.hxx
+++ b/include/svx/svdoedge.hxx
@@ -264,7 +264,7 @@ public:
 
     virtual void NbcSetSnapRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual void NbcMove(const Size& aSize) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRefPnt, const boost::rational<long>& aXFact, const boost::rational<long>& aYFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRefPnt, const boost::rational<sal_Int64>& aXFact, const boost::rational<sal_Int64>& aYFact) SAL_OVERRIDE;
 
     // #i54102# added rotate, mirrorn and shear support
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
diff --git a/include/svx/svdograf.hxx b/include/svx/svdograf.hxx
index 3179369..cd1e633 100644
--- a/include/svx/svdograf.hxx
+++ b/include/svx/svdograf.hxx
@@ -162,7 +162,7 @@ public:
     virtual sal_uInt32 GetHdlCount() const SAL_OVERRIDE;
     virtual SdrHdl*         GetHdl(sal_uInt32 nHdlNum) const SAL_OVERRIDE;
 
-    virtual void            NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void            NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void            NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void            NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void            NbcShear (const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdogrp.hxx b/include/svx/svdogrp.hxx
index 4dc70df..48a5332 100644
--- a/include/svx/svdogrp.hxx
+++ b/include/svx/svdogrp.hxx
@@ -85,7 +85,7 @@ public:
     virtual long GetShearAngle(bool bVertical = false) const SAL_OVERRIDE;
 
     virtual void Move(const Size& rSiz) SAL_OVERRIDE;
-    virtual void Resize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bUnsetRelative = true) SAL_OVERRIDE;
+    virtual void Resize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bUnsetRelative = true) SAL_OVERRIDE;
     virtual void Rotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void Mirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void Shear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
@@ -95,7 +95,7 @@ public:
     virtual void SetLogicRect(const Rectangle& rRect) SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdomeas.hxx b/include/svx/svdomeas.hxx
index f0cb6a7..4ca4642 100644
--- a/include/svx/svdomeas.hxx
+++ b/include/svx/svdomeas.hxx
@@ -117,7 +117,7 @@ public:
     virtual Pointer GetCreatePointer() const SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdoole2.hxx b/include/svx/svdoole2.hxx
index a27a35e..37b7b12 100644
--- a/include/svx/svdoole2.hxx
+++ b/include/svx/svdoole2.hxx
@@ -136,7 +136,7 @@ public:
     SdrOle2Obj& operator=(const SdrOle2Obj& rObj);
 
     virtual void NbcMove(const Size& rSize) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcSetSnapRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual void NbcSetLogicRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual void SetGeoData(const SdrObjGeoData& rGeo) SAL_OVERRIDE;
@@ -167,7 +167,7 @@ public:
                           const OUString& aMediaType );
 
     ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > GetParentXModel()  const;
-    bool CalculateNewScaling( boost::rational<long>& aScaleWidth, boost::rational<long>& aScaleHeight, Size& aObjAreaSize );
+    bool CalculateNewScaling( boost::rational<sal_Int64>& aScaleWidth, boost::rational<sal_Int64>& aScaleHeight, Size& aObjAreaSize );
     bool AddOwnLightClient();
 
     // handy to get the empty replacement graphic without accessing all the old stuff
diff --git a/include/svx/svdopath.hxx b/include/svx/svdopath.hxx
index f3e4a46..efcdf35 100644
--- a/include/svx/svdopath.hxx
+++ b/include/svx/svdopath.hxx
@@ -114,7 +114,7 @@ public:
     basegfx::B2DPolyPolygon getDragPolyPolygon(const SdrDragStat& rDrag) const;
 
     virtual void NbcMove(const Size& aSize) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRefPnt, const boost::rational<long>& aXFact, const boost::rational<long>& aYFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRefPnt, const boost::rational<sal_Int64>& aXFact, const boost::rational<sal_Int64>& aYFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRefPnt, long nAngle, double fSin, double fCos) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRefPnt1, const Point& rRefPnt2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRefPnt, long nAngle, double fTan, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdorect.hxx b/include/svx/svdorect.hxx
index db40274..ea3c63b 100644
--- a/include/svx/svdorect.hxx
+++ b/include/svx/svdorect.hxx
@@ -105,7 +105,7 @@ public:
     virtual Pointer GetCreatePointer() const SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdotable.hxx b/include/svx/svdotable.hxx
index 8b461b6..d78e81b 100644
--- a/include/svx/svdotable.hxx
+++ b/include/svx/svdotable.hxx
@@ -241,7 +241,7 @@ public:
     virtual Pointer GetCreatePointer() const SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
 
     virtual bool BegTextEdit(SdrOutliner& rOutl) SAL_OVERRIDE;
     virtual void EndTextEdit(SdrOutliner& rOutl) SAL_OVERRIDE;
diff --git a/include/svx/svdotext.hxx b/include/svx/svdotext.hxx
index 94a032c..ba69600 100644
--- a/include/svx/svdotext.hxx
+++ b/include/svx/svdotext.hxx
@@ -264,7 +264,7 @@ private:
                                        Rectangle&       rTextRect,
                                        Rectangle&       rAnchorRect,
                                        Rectangle&       rPaintRect,
-                                       boost::rational<long>&        aFitXKorreg ) const;
+                                       boost::rational<sal_Int64>&        aFitXKorreg ) const;
     void ImpAutoFitText( SdrOutliner& rOutliner ) const;
     static void ImpAutoFitText( SdrOutliner& rOutliner, const Size& rShapeSize, bool bIsVerticalWriting );
     SVX_DLLPRIVATE SdrObject* ImpConvertContainedTextToSdrPathObjs(bool bToPoly) const;
@@ -284,7 +284,7 @@ protected:
     SdrObject* ImpConvertMakeObj(const basegfx::B2DPolyPolygon& rPolyPolygon, bool bClosed, bool bBezier, bool bNoSetAttr = false) const;
     SdrObject* ImpConvertAddText(SdrObject* pObj, bool bBezier) const;
     void ImpSetTextStyleSheetListeners();
-    void ImpSetCharStretching(SdrOutliner& rOutliner, const Size& rTextSize, const Size& rShapeSize, boost::rational<long>& rFitXKorreg) const;
+    void ImpSetCharStretching(SdrOutliner& rOutliner, const Size& rTextSize, const Size& rShapeSize, boost::rational<sal_Int64>& rFitXKorreg) const;
     void ImpJustifyRect(Rectangle& rRect) const;
     void ImpCheckShear();
     Rectangle ImpDragCalcRect(const SdrDragStat& rDrag) const;
@@ -465,7 +465,7 @@ public:
     virtual Pointer GetCreatePointer() const SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdouno.hxx b/include/svx/svdouno.hxx
index f22cb57..d72f5eb 100644
--- a/include/svx/svdouno.hxx
+++ b/include/svx/svdouno.hxx
@@ -80,7 +80,7 @@ public:
 
     virtual SdrUnoObj* Clone() const SAL_OVERRIDE;
     SdrUnoObj& operator= (const SdrUnoObj& rObj);
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcSetLayer(SdrLayerID nLayer) SAL_OVERRIDE;
 
     // SpecialDrag support
diff --git a/include/svx/svdovirt.hxx b/include/svx/svdovirt.hxx
index 82c311e..1e41cc1 100644
--- a/include/svx/svdovirt.hxx
+++ b/include/svx/svdovirt.hxx
@@ -101,13 +101,13 @@ public:
     virtual basegfx::B2DPolyPolygon TakeCreatePoly(const SdrDragStat& rDrag) const SAL_OVERRIDE;
 
     virtual void NbcMove(const Size& rSiz) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcRotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void NbcMirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void NbcShear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
 
     virtual void Move(const Size& rSiz) SAL_OVERRIDE;
-    virtual void Resize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bUnsetRelative = true) SAL_OVERRIDE;
+    virtual void Resize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bUnsetRelative = true) SAL_OVERRIDE;
     virtual void Rotate(const Point& rRef, long nWink, double sn, double cs) SAL_OVERRIDE;
     virtual void Mirror(const Point& rRef1, const Point& rRef2) SAL_OVERRIDE;
     virtual void Shear(const Point& rRef, long nWink, double tn, bool bVShear) SAL_OVERRIDE;
diff --git a/include/svx/svdpoev.hxx b/include/svx/svdpoev.hxx
index b0adf6d..aa4e0e8 100644
--- a/include/svx/svdpoev.hxx
+++ b/include/svx/svdpoev.hxx
@@ -64,7 +64,7 @@ public:
     bool IsDeleteMarkedPointsPossible() const SAL_OVERRIDE;
 
     void MoveMarkedPoints(const Size& rSiz);
-    void ResizeMarkedPoints(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact);
+    void ResizeMarkedPoints(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact);
     void RotateMarkedPoints(const Point& rRef, long nWink);
 
     // Hierbei entstehen eventuell beliebig viele neue Objekte:
diff --git a/include/svx/svdsnpv.hxx b/include/svx/svdsnpv.hxx
index c963d80..5b3dcfa 100644
--- a/include/svx/svdsnpv.hxx
+++ b/include/svx/svdsnpv.hxx
@@ -51,8 +51,8 @@ protected:
     class ImplHelpLineOverlay*              mpHelpLineOverlay;
 
     Size                        aMagnSiz;
-    boost::rational<long>       aSnapWdtX;
-    boost::rational<long>       aSnapWdtY;
+    boost::rational<sal_Int64>       aSnapWdtX;
+    boost::rational<sal_Int64>       aSnapWdtY;
 
     sal_uInt16                  nMagnSizPix;
     long                        nSnapAngle;
@@ -98,9 +98,9 @@ public:
     virtual void BrkAction() SAL_OVERRIDE; // f.abg.Klassen Actions z,B, Draggen abbrechen.
     virtual void TakeActionRect(Rectangle& rRect) const SAL_OVERRIDE;
 
-    void SetSnapGridWidth(const boost::rational<long>& rX, const boost::rational<long>& rY) { aSnapWdtX=rX; aSnapWdtY=rY; }
-    const boost::rational<long>& GetSnapGridWidthX() const { return aSnapWdtX; }
-    const boost::rational<long>& GetSnapGridWidthY() const { return aSnapWdtY; }
+    void SetSnapGridWidth(const boost::rational<sal_Int64>& rX, const boost::rational<sal_Int64>& rY) { aSnapWdtX=rX; aSnapWdtY=rY; }
+    const boost::rational<sal_Int64>& GetSnapGridWidthX() const { return aSnapWdtX; }
+    const boost::rational<sal_Int64>& GetSnapGridWidthY() const { return aSnapWdtY; }
 
     void SetSnapMagnetic(const Size& rSiz) { if (rSiz!=aMagnSiz) { aMagnSiz=rSiz; } }
     const Size& GetSnapMagnetic() const { return aMagnSiz; }
diff --git a/include/svx/svdtrans.hxx b/include/svx/svdtrans.hxx
index 163e2f2..9790327 100644
--- a/include/svx/svdtrans.hxx
+++ b/include/svx/svdtrans.hxx
@@ -55,10 +55,10 @@ inline void MovePoly(Polygon& rPoly, const Size& S)      { rPoly.Move(S.Width(),
 inline void MovePoly(tools::PolyPolygon& rPoly, const Size& S)  { rPoly.Move(S.Width(),S.Height()); }
 void MoveXPoly(XPolygon& rPoly, const Size& S);
 
-SVX_DLLPUBLIC void ResizeRect(Rectangle& rRect, const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact, bool bNoJustify = false);
-inline void ResizePoint(Point& rPnt, const Point& rRef, boost::rational<long> xFact, boost::rational<long> yFact);
-void ResizePoly(Polygon& rPoly, const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact);
-void ResizeXPoly(XPolygon& rPoly, const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact);
+SVX_DLLPUBLIC void ResizeRect(Rectangle& rRect, const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact, bool bNoJustify = false);
+inline void ResizePoint(Point& rPnt, const Point& rRef, boost::rational<sal_Int64> xFact, boost::rational<sal_Int64> yFact);
+void ResizePoly(Polygon& rPoly, const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact);
+void ResizeXPoly(XPolygon& rPoly, const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact);
 
 inline void RotatePoint(Point& rPnt, const Point& rRef, double sn, double cs);
 SVX_DLLPUBLIC void RotatePoly(Polygon& rPoly, const Point& rRef, double sn, double cs);
@@ -102,7 +102,7 @@ void CrookStretchPoly(XPolyPolygon& rPoly, const Point& rCenter, const Point& rR
 /*  Inline                                                                                        */
 /**************************************************************************************************/
 
-inline void ResizePoint(Point& rPnt, const Point& rRef, boost::rational<long> xFact, boost::rational<long> yFact)
+inline void ResizePoint(Point& rPnt, const Point& rRef, boost::rational<sal_Int64> xFact, boost::rational<sal_Int64> yFact)
 {
     rPnt.X()=rRef.X()+ Round(((double)(rPnt.X()-rRef.X())*xFact.numerator())/xFact.denominator());
     rPnt.Y()=rRef.Y()+ Round(((double)(rPnt.Y()-rRef.Y())*yFact.numerator())/yFact.denominator());
@@ -219,25 +219,25 @@ SVX_DLLPUBLIC void OrthoDistance4(const Point& rPt0, Point& rPt, bool bBigOrtho)
 // Rechnung und Zwischenergebnis sind BigInt.
 SVX_DLLPUBLIC long BigMulDiv(long nVal, long nMul, long nDiv);
 
-// Fehlerbehaftetes Kuerzen einer boost::rational<long>.
+// Fehlerbehaftetes Kuerzen einer boost::rational<sal_Int64>.
 // nDigits gibt an, wieviele signifikante Stellen in
 // Zaehler/Nenner mindestens erhalten bleiben sollen.
-void Kuerzen(boost::rational<long>& rF, unsigned nDigits);
+void Kuerzen(boost::rational<sal_Int64>& rF, unsigned nDigits);
 
 
 class FrPair {
-    boost::rational<long> aX;
-    boost::rational<long> aY;
+    boost::rational<sal_Int64> aX;
+    boost::rational<sal_Int64> aY;
 public:
     FrPair()                                          : aX(0,1),aY(0,1)             {}
-    FrPair(const boost::rational<long>& rBoth)        : aX(rBoth),aY(rBoth)         {}
-    FrPair(const boost::rational<long>& rX, const boost::rational<long>& rY)    : aX(rX),aY(rY)               {}
+    FrPair(const boost::rational<sal_Int64>& rBoth)        : aX(rBoth),aY(rBoth)         {}
+    FrPair(const boost::rational<sal_Int64>& rX, const boost::rational<sal_Int64>& rY)    : aX(rX),aY(rY)               {}
     FrPair(long nMul, long nDiv)                      : aX(nMul,nDiv),aY(nMul,nDiv) {}
     FrPair(long xMul, long xDiv, long yMul, long yDiv): aX(xMul,xDiv),aY(yMul,yDiv) {}
-    const boost::rational<long>&  X() const { return aX; }
-    const boost::rational<long>&  Y() const { return aY; }
-    boost::rational<long>&  X()             { return aX; }
-    boost::rational<long>&  Y()             { return aY; }
+    const boost::rational<sal_Int64>&  X() const { return aX; }
+    const boost::rational<sal_Int64>&  Y() const { return aY; }
+    boost::rational<sal_Int64>&  X()             { return aX; }
+    boost::rational<sal_Int64>&  Y()             { return aY; }
 };
 
 // Fuer die Umrechnung von Masseinheiten
@@ -263,7 +263,7 @@ inline bool IsInch(FieldUnit eU) {
 }
 
 class SVX_DLLPUBLIC SdrFormatter {
-    boost::rational<long>  aScale;
+    boost::rational<sal_Int64>  aScale;
     long      nMul_;
     long      nDiv_;
     short     nKomma_;
diff --git a/include/svx/sxfiitm.hxx b/include/svx/sxfiitm.hxx
index 6aa43ac..64ef18d 100644
--- a/include/svx/sxfiitm.hxx
+++ b/include/svx/sxfiitm.hxx
@@ -27,19 +27,19 @@
 /*************************************************************************/
 
 class SdrFractionItem: public SfxPoolItem {
-    boost::rational<long> nValue;
+    boost::rational<sal_Int64> nValue;
 public:
     TYPEINFO_VISIBILITY( SVX_DLLPUBLIC );
     SdrFractionItem(sal_uInt16 nId=0): SfxPoolItem(nId) {}
-    SdrFractionItem(sal_uInt16 nId, const boost::rational<long>& rVal): SfxPoolItem(nId), nValue(rVal) {}
+    SdrFractionItem(sal_uInt16 nId, const boost::rational<sal_Int64>& rVal): SfxPoolItem(nId), nValue(rVal) {}
     SdrFractionItem(sal_uInt16 nId, SvStream& rIn);
     virtual bool             operator==(const SfxPoolItem&) const SAL_OVERRIDE;
     virtual bool GetPresentation(SfxItemPresentation ePresentation, SfxMapUnit eCoreMetric, SfxMapUnit ePresentationMetric, OUString &rText, const IntlWrapper * = 0) const SAL_OVERRIDE;
     virtual SfxPoolItem*     Create(SvStream&, sal_uInt16 nVer) const SAL_OVERRIDE;
     virtual SvStream&        Store(SvStream&, sal_uInt16 nItemVers) const SAL_OVERRIDE;
     virtual SfxPoolItem*     Clone(SfxItemPool *pPool=NULL) const SAL_OVERRIDE;
-            const boost::rational<long>&  GetValue() const { return nValue; }
-            void             SetValue(const boost::rational<long>& rVal) { nValue = rVal; }
+            const boost::rational<sal_Int64>&  GetValue() const { return nValue; }
+            void             SetValue(const boost::rational<sal_Int64>& rVal) { nValue = rVal; }
 };
 
 
diff --git a/include/svx/sxsiitm.hxx b/include/svx/sxsiitm.hxx
index 8a7625a..ecbba8d 100644
--- a/include/svx/sxsiitm.hxx
+++ b/include/svx/sxsiitm.hxx
@@ -24,8 +24,8 @@
 class SdrScaleItem: public SdrFractionItem {
 public:
     TYPEINFO_OVERRIDE();
-    SdrScaleItem(sal_uInt16 nId=0): SdrFractionItem(nId, boost::rational<long>(1,1) ) {}
-    SdrScaleItem(sal_uInt16 nId, const boost::rational<long>& rVal): SdrFractionItem(nId,rVal) {}
+    SdrScaleItem(sal_uInt16 nId=0): SdrFractionItem(nId, boost::rational<sal_Int64>(1,1) ) {}
+    SdrScaleItem(sal_uInt16 nId, const boost::rational<sal_Int64>& rVal): SdrFractionItem(nId,rVal) {}
     SdrScaleItem(sal_uInt16 nId, SvStream& rIn): SdrFractionItem(nId,rIn) {}
     virtual bool GetPresentation(SfxItemPresentation ePresentation, SfxMapUnit eCoreMetric, SfxMapUnit ePresentationMetric, OUString &rText, const IntlWrapper * = 0) const SAL_OVERRIDE;
     virtual SfxPoolItem*     Create(SvStream&, sal_uInt16 nVer) const SAL_OVERRIDE;
diff --git a/include/tools/rational.hxx b/include/tools/rational.hxx
index 0eeb103..bd36151 100644
--- a/include/tools/rational.hxx
+++ b/include/tools/rational.hxx
@@ -15,10 +15,10 @@
 
 class SvStream;
 
-TOOLS_DLLPUBLIC boost::rational<long> rational_FromDouble(double dVal);
-TOOLS_DLLPUBLIC void rational_ReduceInaccurate(boost::rational<long>& rRational, unsigned nSignificantBits);
-TOOLS_DLLPUBLIC SvStream& ReadFraction(SvStream& rIStream, boost::rational<long>& rRational);
-TOOLS_DLLPUBLIC SvStream& WriteFraction(SvStream& rOStream, const boost::rational<long>& rRational);
+TOOLS_DLLPUBLIC boost::rational<sal_Int64> rational_FromDouble(double dVal);
+TOOLS_DLLPUBLIC void rational_ReduceInaccurate(boost::rational<sal_Int64>& rRational, unsigned nSignificantBits);
+TOOLS_DLLPUBLIC SvStream& ReadFraction(SvStream& rIStream, boost::rational<sal_Int64>& rRational);
+TOOLS_DLLPUBLIC SvStream& WriteFraction(SvStream& rOStream, const boost::rational<sal_Int64>& rRational);
 
 #endif
 
diff --git a/include/vcl/gdimtf.hxx b/include/vcl/gdimtf.hxx
index 128895f..4db341f 100644
--- a/include/vcl/gdimtf.hxx
+++ b/include/vcl/gdimtf.hxx
@@ -136,7 +136,7 @@ public:
     // additional Move method getting specifics how to handle MapMode( MAP_PIXEL )
     void            Move( long nX, long nY, long nDPIX, long nDPIY );
     void            Scale( double fScaleX, double fScaleY );
-    void            Scale( const boost::rational<long>& rScaleX, const boost::rational<long>& rScaleY );
+    void            Scale( const boost::rational<sal_Int64>& rScaleX, const boost::rational<sal_Int64>& rScaleY );
     void            Rotate( long nAngle10 );
     void            Clip( const Rectangle& );
     /* get the bound rect of the contained actions
diff --git a/include/vcl/mapmod.hxx b/include/vcl/mapmod.hxx
index 211727f..e86c96f 100644
--- a/include/vcl/mapmod.hxx
+++ b/include/vcl/mapmod.hxx
@@ -44,8 +44,8 @@ private:
     sal_uLong           mnRefCount;
     MapUnit         meUnit;
     Point           maOrigin;
-    boost::rational<long>        maScaleX;
-    boost::rational<long>        maScaleY;
+    boost::rational<sal_Int64>        maScaleX;
+    boost::rational<sal_Int64>        maScaleY;
     bool            mbSimple;
 
     friend SvStream& ReadImplMapMode( SvStream& rIStm, ImplMapMode& rMapMode );
@@ -75,7 +75,7 @@ public:
                     MapMode( const MapMode& rMapMode );
                     MapMode( MapUnit eUnit );
                     MapMode( MapUnit eUnit, const Point& rLogicOrg,
-                             const boost::rational<long>& rScaleX, const boost::rational<long>& rScaleY );
+                             const boost::rational<sal_Int64>& rScaleX, const boost::rational<sal_Int64>& rScaleY );
                     ~MapMode();
 
     void            SetMapUnit( MapUnit eUnit );
@@ -86,11 +86,11 @@ public:
     const Point&    GetOrigin() const
                         { return mpImplMapMode->maOrigin; }
 
-    void            SetScaleX( const boost::rational<long>& rScaleX );
-    const boost::rational<long>&  GetScaleX() const
+    void            SetScaleX( const boost::rational<sal_Int64>& rScaleX );
+    const boost::rational<sal_Int64>&  GetScaleX() const
                         { return mpImplMapMode->maScaleX; }
-    void            SetScaleY( const boost::rational<long>& rScaleY );
-    const boost::rational<long>&  GetScaleY() const
+    void            SetScaleY( const boost::rational<sal_Int64>& rScaleY );
+    const boost::rational<sal_Int64>&  GetScaleY() const
                         { return mpImplMapMode->maScaleY; }
 
     MapMode&        operator=( const MapMode& rMapMode );
diff --git a/include/vcl/virdev.hxx b/include/vcl/virdev.hxx
index 4886410..c7d1365 100644
--- a/include/vcl/virdev.hxx
+++ b/include/vcl/virdev.hxx
@@ -124,7 +124,7 @@ public:
 
     bool                SetOutputSizePixel( const Size& rNewSize, bool bErase = true );
     bool                SetOutputSizePixelScaleOffsetAndBuffer( const Size& rNewSize,
-                                                                const boost::rational<long>& rScale,
+                                                                const boost::rational<sal_Int64>& rScale,
                                                                 const Point& rNewOffset,
                                                                 const basebmp::RawMemorySharedArray &pBuffer,
                                                                 const bool bTopDown = false );
diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx
index 3e94287..cb7dbde 100644
--- a/include/vcl/window.hxx
+++ b/include/vcl/window.hxx
@@ -1011,8 +1011,8 @@ public:
     void                                SetCursor( vcl::Cursor* pCursor );
     vcl::Cursor*                        GetCursor() const;
 
-    void                                SetZoom( const boost::rational<long>& rZoom );
-    const boost::rational<long>&        GetZoom() const;
+    void                                SetZoom( const boost::rational<sal_Int64>& rZoom );
+    const boost::rational<sal_Int64>&        GetZoom() const;
     bool                                IsZoom() const;
     long                                CalcZoom( long n ) const;
 
diff --git a/reportdesign/inc/RptObject.hxx b/reportdesign/inc/RptObject.hxx
index d91e271..293a169 100644
--- a/reportdesign/inc/RptObject.hxx
+++ b/reportdesign/inc/RptObject.hxx
@@ -148,7 +148,7 @@ protected:
     OCustomShape(const OUString& _sComponentName);
 
     virtual void NbcMove( const Size& rSize ) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcSetLogicRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) SAL_OVERRIDE;
 
@@ -196,7 +196,7 @@ protected:
 
 
     virtual void NbcMove( const Size& rSize ) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcSetLogicRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) SAL_OVERRIDE;
 
@@ -244,7 +244,7 @@ protected:
     virtual ~OUnoObject();
 
     virtual void NbcMove( const Size& rSize ) SAL_OVERRIDE;
-    virtual void NbcResize(const Point& rRef, const boost::rational<long>& xFact, const boost::rational<long>& yFact) SAL_OVERRIDE;
+    virtual void NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFact, const boost::rational<sal_Int64>& yFact) SAL_OVERRIDE;
     virtual void NbcSetLogicRect(const Rectangle& rRect) SAL_OVERRIDE;
     virtual bool EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd) SAL_OVERRIDE;
 
diff --git a/reportdesign/source/core/sdr/RptObject.cxx b/reportdesign/source/core/sdr/RptObject.cxx
index 5c0d525..b9c0b5d 100644
--- a/reportdesign/source/core/sdr/RptObject.cxx
+++ b/reportdesign/source/core/sdr/RptObject.cxx
@@ -538,7 +538,7 @@ void OCustomShape::NbcMove( const Size& rSize )
         SdrObjCustomShape::NbcMove( rSize );
 }
 
-void OCustomShape::NbcResize(const Point& rRef, const boost::rational<long>& xFract, const boost::rational<long>& yFract)
+void OCustomShape::NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFract, const boost::rational<sal_Int64>& yFract)
 {
     SdrObjCustomShape::NbcResize( rRef, xFract, yFract );
 
@@ -749,7 +749,7 @@ void OUnoObject::NbcMove( const Size& rSize )
 
 
 
-void OUnoObject::NbcResize(const Point& rRef, const boost::rational<long>& xFract, const boost::rational<long>& yFract)
+void OUnoObject::NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFract, const boost::rational<sal_Int64>& yFract)
 {
     SdrUnoObj::NbcResize( rRef, xFract, yFract );
 
@@ -1050,7 +1050,7 @@ void OOle2Obj::NbcMove( const Size& rSize )
 
 
 
-void OOle2Obj::NbcResize(const Point& rRef, const boost::rational<long>& xFract, const boost::rational<long>& yFract)
+void OOle2Obj::NbcResize(const Point& rRef, const boost::rational<sal_Int64>& xFract, const boost::rational<sal_Int64>& yFract)
 {
     SdrOle2Obj::NbcResize( rRef, xFract, yFract );
 
diff --git a/reportdesign/source/ui/inc/DesignView.hxx b/reportdesign/source/ui/inc/DesignView.hxx
index 4c36ab7..e9d7671 100644
--- a/reportdesign/source/ui/inc/DesignView.hxx
+++ b/reportdesign/source/ui/inc/DesignView.hxx
@@ -257,7 +257,7 @@ namespace rptui
 
         /** zoom the ruler and view windows
         */
-        void            zoom(const boost::rational<long>& _aZoom);
+        void            zoom(const boost::rational<sal_Int64>& _aZoom);
 
         /** fills the vector with all selected control models
             /param  _rSelection The vector will be filled and will not be cleared before.
diff --git a/reportdesign/source/ui/inc/ReportWindow.hxx b/reportdesign/source/ui/inc/ReportWindow.hxx
index fec4e81..724c368 100644
--- a/reportdesign/source/ui/inc/ReportWindow.hxx
+++ b/reportdesign/source/ui/inc/ReportWindow.hxx
@@ -211,7 +211,7 @@ namespace rptui
 
         /** zoom the ruler and view windows
         */
-        void zoom(const boost::rational<long>& _aZoom);
+        void zoom(const boost::rational<sal_Int64>& _aZoom);
 
         /** fills the vector with all selected control models
             /param  _rSelection The vector will be filled and will not be cleared before.
diff --git a/reportdesign/source/ui/inc/ScrollHelper.hxx b/reportdesign/source/ui/inc/ScrollHelper.hxx
index f00ceb8..d1315ca 100644
--- a/reportdesign/source/ui/inc/ScrollHelper.hxx
+++ b/reportdesign/source/ui/inc/ScrollHelper.hxx
@@ -202,7 +202,7 @@ namespace rptui
 
         /** zoom the ruler and view windows
         */
-        void zoom(const boost::rational<long>& _aZoom);
+        void zoom(const boost::rational<sal_Int64>& _aZoom);
 
         /** fills the vector with all selected control models
             /param  _rSelection The vector will be filled and will not be cleared before.
diff --git a/reportdesign/source/ui/inc/SectionWindow.hxx b/reportdesign/source/ui/inc/SectionWindow.hxx
index e57769c..5b28d97 100644
--- a/reportdesign/source/ui/inc/SectionWindow.hxx
+++ b/reportdesign/source/ui/inc/SectionWindow.hxx
@@ -120,7 +120,7 @@ namespace rptui
 
         /** zoom the ruler and view windows
         */
-        void zoom(const boost::rational<long>& _aZoom);
+        void zoom(const boost::rational<sal_Int64>& _aZoom);
 
         void scrollChildren(long _nThumbPosX);
     };
diff --git a/reportdesign/source/ui/inc/StartMarker.hxx b/reportdesign/source/ui/inc/StartMarker.hxx
index 83d4d7a..d96cfa06 100644
--- a/reportdesign/source/ui/inc/StartMarker.hxx
+++ b/reportdesign/source/ui/inc/StartMarker.hxx
@@ -71,7 +71,7 @@ namespace rptui
 
         /** zoom the ruler and view windows
         */
-        void            zoom(const boost::rational<long>& _aZoom);
+        void            zoom(const boost::rational<sal_Int64>& _aZoom);
     };
 }
 #endif // INCLUDED_REPORTDESIGN_SOURCE_UI_INC_STARTMARKER_HXX
diff --git a/reportdesign/source/ui/inc/UITools.hxx b/reportdesign/source/ui/inc/UITools.hxx
index facbd12..01a65aa 100644
--- a/reportdesign/source/ui/inc/UITools.hxx
+++ b/reportdesign/source/ui/inc/UITools.hxx
@@ -176,7 +176,7 @@ namespace rptui
         @param  _aZoom      the zoom scale
         @param  _rWindow    where to set the map mode
     */
-    void setZoomFactor(const boost::rational<long>& _aZoom, ::vcl::Window& _rWindow);
+    void setZoomFactor(const boost::rational<sal_Int64>& _aZoom, ::vcl::Window& _rWindow);
 }
 #endif // INCLUDED_REPORTDESIGN_SOURCE_UI_INC_UITOOLS_HXX
 
diff --git a/reportdesign/source/ui/inc/ViewsWindow.hxx b/reportdesign/source/ui/inc/ViewsWindow.hxx
index 5fe5ab2..5963b42 100644
--- a/reportdesign/source/ui/inc/ViewsWindow.hxx
+++ b/reportdesign/source/ui/inc/ViewsWindow.hxx
@@ -331,7 +331,7 @@ namespace rptui
 
         /** zoom the ruler and view windows
         */
-        void zoom(const boost::rational<long>& _aZoom);
+        void zoom(const boost::rational<sal_Int64>& _aZoom);
 
         void scrollChildren(const Point& _aThumbPos);
 
diff --git a/reportdesign/source/ui/misc/UITools.cxx b/reportdesign/source/ui/misc/UITools.cxx
index 2ca816d..59e0121 100644
--- a/reportdesign/source/ui/misc/UITools.cxx
+++ b/reportdesign/source/ui/misc/UITools.cxx
@@ -991,7 +991,7 @@ void correctOverlapping(SdrObject* _pControl,OReportSection& _aReportSection,boo
         rSectionView.InsertObjectAtView(_pControl,*rSectionView.GetSdrPageView(),SDRINSERT_ADDMARK);
 }
 
-void setZoomFactor(const boost::rational<long>& _aZoom, vcl::Window& _rWindow)
+void setZoomFactor(const boost::rational<sal_Int64>& _aZoom, vcl::Window& _rWindow)
 {
     MapMode aMapMode( _rWindow.GetMapMode() );
     aMapMode.SetScaleX(_aZoom);
diff --git a/reportdesign/source/ui/report/DesignView.cxx b/reportdesign/source/ui/report/DesignView.cxx
index 853358e..09d0626 100644
--- a/reportdesign/source/ui/report/DesignView.cxx
+++ b/reportdesign/source/ui/report/DesignView.cxx
@@ -684,7 +684,7 @@ sal_uInt32 ODesignView::getMarkedObjectCount() const
     return m_aScrollWindow.getMarkedObjectCount();
 }
 
-void ODesignView::zoom(const boost::rational<long>& _aZoom)
+void ODesignView::zoom(const boost::rational<sal_Int64>& _aZoom)
 {
     m_aScrollWindow.zoom(_aZoom);
 }
diff --git a/reportdesign/source/ui/report/EndMarker.cxx b/reportdesign/source/ui/report/EndMarker.cxx
index eacba6c..ec3851b 100644
--- a/reportdesign/source/ui/report/EndMarker.cxx
+++ b/reportdesign/source/ui/report/EndMarker.cxx
@@ -45,7 +45,7 @@ OEndMarker::~OEndMarker()
 
 void OEndMarker::Paint( const Rectangle& /*rRect*/ )
 {
-    boost::rational<long> aCornerSpace(long(CORNER_SPACE));
+    boost::rational<sal_Int64> aCornerSpace(long(CORNER_SPACE));
     aCornerSpace *= GetMapMode().GetScaleX();
     const long nCornerSpace = boost::rational_cast<long>(aCornerSpace);
 
diff --git a/reportdesign/source/ui/report/ReportController.cxx b/reportdesign/source/ui/report/ReportController.cxx
index bdfa224..89dbb5a 100644
--- a/reportdesign/source/ui/report/ReportController.cxx
+++ b/reportdesign/source/ui/report/ReportController.cxx
@@ -4171,7 +4171,7 @@ void OReportController::impl_fillState_nothrow(const OUString& _sProperty,dbaui:
 
 void OReportController::impl_zoom_nothrow()
 {
-    boost::rational<long> aZoom(m_nZoomValue,100);
+    boost::rational<sal_Int64> aZoom(m_nZoomValue,100);
     setZoomFactor( aZoom,*getDesignView() );
     getDesignView()->zoom(aZoom);
     InvalidateFeature(SID_ATTR_ZOOM,Reference< XStatusListener >(), true);
diff --git a/reportdesign/source/ui/report/ReportSection.cxx b/reportdesign/source/ui/report/ReportSection.cxx
index 519a0ab..5111ecc 100644
--- a/reportdesign/source/ui/report/ReportSection.cxx
+++ b/reportdesign/source/ui/report/ReportSection.cxx
@@ -202,8 +202,8 @@ void OReportSection::fill()
     m_pView->SetGridFine(aGridSizeFine);
 
     // #i93595# set snap grid width to snap to all existing subdivisions
-    const boost::rational<long> aX(aGridSizeFine.A());
-    const boost::rational<long> aY(aGridSizeFine.B());
+    const boost::rational<sal_Int64> aX(aGridSizeFine.A());
+    const boost::rational<sal_Int64> aY(aGridSizeFine.B());
     m_pView->SetSnapGridWidth(aX, aY);
 
     m_pView->SetGridSnap( pDesignView->isGridSnap() );
diff --git a/reportdesign/source/ui/report/ReportWindow.cxx b/reportdesign/source/ui/report/ReportWindow.cxx
index 57afd5c..db1b6aa 100644
--- a/reportdesign/source/ui/report/ReportWindow.cxx
+++ b/reportdesign/source/ui/report/ReportWindow.cxx
@@ -141,10 +141,10 @@ void OReportWindow::showRuler(bool _bShow)
 
 sal_Int32 OReportWindow::getMaxMarkerWidth(bool _bWithEnd) const
 {
-    boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
+    boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
     aStartWidth *= m_aViewsWindow.GetMapMode().GetScaleX();
     if ( _bWithEnd )
-        aStartWidth += boost::rational<long>(long(REPORT_ENDMARKER_WIDTH));
+        aStartWidth += boost::rational<sal_Int64>(long(REPORT_ENDMARKER_WIDTH));
     return sal_Int32(boost::rational_cast<long>(aStartWidth));
 }
 
@@ -153,11 +153,11 @@ sal_Int32 OReportWindow::GetTotalWidth() const
     sal_Int32 nWidth = 0;
     if ( !m_aViewsWindow.empty() )
     {
-        boost::rational<long> aStartWidth(long(REPORT_ENDMARKER_WIDTH + REPORT_STARTMARKER_WIDTH ));
-        const boost::rational<long> aZoom(m_pView->getController().getZoomValue(),100);
+        boost::rational<sal_Int64> aStartWidth(long(REPORT_ENDMARKER_WIDTH + REPORT_STARTMARKER_WIDTH ));
+        const boost::rational<sal_Int64> aZoom(m_pView->getController().getZoomValue(),100);
         aStartWidth *= aZoom;
         const sal_Int32 nPaperWidth = getStyleProperty<awt::Size>(m_pView->getController().getReportDefinition(),PROPERTY_PAPERSIZE).Width;
-        boost::rational<long> aPaperWidth(nPaperWidth,1);
+        boost::rational<sal_Int64> aPaperWidth(nPaperWidth,1);
         aPaperWidth *= aZoom;
         const Size aPageSize = LogicToPixel(Size(boost::rational_cast<long>(aPaperWidth),0));
         nWidth = aPageSize.Width() + boost::rational_cast<long>(aStartWidth);
@@ -171,7 +171,7 @@ void OReportWindow::Resize()
     if ( !m_aViewsWindow.empty() )
     {
         const Size aTotalOutputSize = GetOutputSizePixel();
-        boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH)*m_pView->getController().getZoomValue(),100);
+        boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH)*m_pView->getController().getZoomValue(),100);
 
         const Point aOffset = LogicToPixel( Point( SECTION_OFFSET, 0 ), MAP_APPFONT );
         Point aStartPoint(boost::rational_cast<long>(aStartWidth) + aOffset.X(),0);
@@ -372,7 +372,7 @@ sal_uInt32 OReportWindow::getMarkedObjectCount() const
     return m_aViewsWindow.getMarkedObjectCount();
 }
 
-void OReportWindow::zoom(const boost::rational<long>& _aZoom)
+void OReportWindow::zoom(const boost::rational<sal_Int64>& _aZoom)
 {
     m_aHRuler.SetZoom(_aZoom);
     m_aHRuler.Invalidate();
@@ -414,14 +414,14 @@ sal_uInt16 OReportWindow::getZoomFactor(SvxZoomType _eType) const
             break;
         case SVX_ZOOM_WHOLEPAGE:
             {
-                nZoom = (sal_uInt16) boost::rational_cast<long>( boost::rational<long>(aSize.Width() * 100, impl_getRealPixelWidth()) );
+                nZoom = (sal_uInt16) boost::rational_cast<long>( boost::rational<sal_Int64>(aSize.Width() * 100, impl_getRealPixelWidth()) );
                 MapMode aMap( MAP_100TH_MM );
                 const Size aHeight = m_aViewsWindow.LogicToPixel(m_aViewsWindow.PixelToLogic(Size(0,GetTotalHeight() + m_aHRuler.GetSizePixel().Height())),aMap);
-                nZoom = ::std::min(nZoom, (sal_uInt16) boost::rational_cast<long>( boost::rational<long>(aSize.Height() * 100, aHeight.Height()) ));
+                nZoom = ::std::min(nZoom, (sal_uInt16) boost::rational_cast<long>( boost::rational<sal_Int64>(aSize.Height() * 100, aHeight.Height()) ));
             }
             break;
         case SVX_ZOOM_PAGEWIDTH:
-            nZoom = (sal_uInt16)boost::rational_cast<long>( boost::rational<long>(aSize.Width() * 100, this->impl_getRealPixelWidth()) );
+            nZoom = (sal_uInt16)boost::rational_cast<long>( boost::rational<sal_Int64>(aSize.Width() * 100, this->impl_getRealPixelWidth()) );
             break;
         default:
             break;
diff --git a/reportdesign/source/ui/report/ScrollHelper.cxx b/reportdesign/source/ui/report/ScrollHelper.cxx
index 59d1f6d..5db2bf0 100644
--- a/reportdesign/source/ui/report/ScrollHelper.cxx
+++ b/reportdesign/source/ui/report/ScrollHelper.cxx
@@ -101,7 +101,7 @@ void OScrollWindowHelper::setTotalSize(sal_Int32 _nWidth ,sal_Int32 _nHeight)
     m_aTotalPixelSize.Height() = _nHeight;
 
     // now set the ranges without start marker
-    boost::rational<long> aStartWidth(REPORT_STARTMARKER_WIDTH * m_pParent->getController().getZoomValue(),100);
+    boost::rational<sal_Int64> aStartWidth(REPORT_STARTMARKER_WIDTH * m_pParent->getController().getZoomValue(),100);
     long nWidth = long(_nWidth - boost::rational_cast<double>(aStartWidth));
     m_aHScroll.SetRangeMax( nWidth );
     m_aVScroll.SetRangeMax( m_aTotalPixelSize.Height() );
@@ -163,7 +163,7 @@ Size OScrollWindowHelper::ResizeScrollBars()
     const Point aOffset = LogicToPixel( Point( SECTION_OFFSET, SECTION_OFFSET ), MAP_APPFONT );
     // resize scrollbars and set their ranges
     {
-        boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH*m_pParent->getController().getZoomValue()),100);
+        boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH*m_pParent->getController().getZoomValue()),100);
         const sal_Int32 nNewWidth = aOutPixSz.Width() - aOffset.X() - boost::rational_cast<long>(aStartWidth);
         lcl_setScrollBar(nNewWidth,Point( boost::rational_cast<long>(aStartWidth) + aOffset.X(), aOutPixSz.Height() ),Size( nNewWidth, nScrSize ),m_aHScroll);
     }
@@ -382,7 +382,7 @@ sal_uInt32 OScrollWindowHelper::getMarkedObjectCount() const
     return m_aReportWindow.getMarkedObjectCount();
 }
 
-void OScrollWindowHelper::zoom(const boost::rational<long>& _aZoom)
+void OScrollWindowHelper::zoom(const boost::rational<sal_Int64>& _aZoom)
 {
     m_aReportWindow.zoom(_aZoom);
     Resize();
diff --git a/reportdesign/source/ui/report/SectionWindow.cxx b/reportdesign/source/ui/report/SectionWindow.cxx
index 1d82b71..7c07993 100644
--- a/reportdesign/source/ui/report/SectionWindow.cxx
+++ b/reportdesign/source/ui/report/SectionWindow.cxx
@@ -220,7 +220,7 @@ void OSectionWindow::Resize()
     Window::Resize();
 
     Size aOutputSize = GetOutputSizePixel();
-    boost::rational<long> aEndWidth(long(REPORT_ENDMARKER_WIDTH));
+    boost::rational<sal_Int64> aEndWidth(long(REPORT_ENDMARKER_WIDTH));
     aEndWidth *= GetMapMode().GetScaleX();
 
     const Point aThumbPos = m_pParent->getView()->getThumbPos();
@@ -236,7 +236,7 @@ void OSectionWindow::Resize()
     {
         const bool bShowEndMarker = m_pParent->getView()->GetTotalWidth() <= (aThumbPos.X() +  aOutputSize.Width() );
 
-        boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
+        boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
         aStartWidth *= GetMapMode().GetScaleX();
 
         // set start marker
@@ -299,7 +299,7 @@ IMPL_LINK( OSectionWindow, Collapsed, OColorListener *, _pMarker )
     return 0L;
 }
 
-void OSectionWindow::zoom(const boost::rational<long>& _aZoom)
+void OSectionWindow::zoom(const boost::rational<sal_Int64>& _aZoom)
 {
     setZoomFactor(_aZoom,*this);
     m_aStartMarker.zoom(_aZoom);
diff --git a/reportdesign/source/ui/report/StartMarker.cxx b/reportdesign/source/ui/report/StartMarker.cxx
index bc7fc19..75b30f7 100644
--- a/reportdesign/source/ui/report/StartMarker.cxx
+++ b/reportdesign/source/ui/report/StartMarker.cxx
@@ -89,7 +89,7 @@ OStartMarker::~OStartMarker()
 
 sal_Int32 OStartMarker::getMinHeight() const
 {
-    boost::rational<long> aExtraWidth(long(2*REPORT_EXTRA_SPACE));
+    boost::rational<sal_Int64> aExtraWidth(long(2*REPORT_EXTRA_SPACE));
     aExtraWidth *= GetMapMode().GetScaleX();
     return LogicToPixel(Size(0,m_aText.GetTextHeight())).Height() + boost::rational_cast<long>(aExtraWidth);
 }
@@ -221,7 +221,7 @@ void OStartMarker::Resize()
     aImageSize.Width() = long(aImageSize.Width() * boost::rational_cast<double>(rMapMode.GetScaleX()));
     aImageSize.Height() = long(aImageSize.Height() * boost::rational_cast<double>(rMapMode.GetScaleY()));
 
-    boost::rational<long> aExtraWidth(long(REPORT_EXTRA_SPACE));
+    boost::rational<sal_Int64> aExtraWidth(long(REPORT_EXTRA_SPACE));
     aExtraWidth *= rMapMode.GetScaleX();
 
     Point aPos(aImageSize.Width() + boost::rational_cast<long>((aExtraWidth + aExtraWidth)), boost::rational_cast<long>(aExtraWidth));
@@ -281,7 +281,7 @@ void OStartMarker::setCollapsed(bool _bCollapsed)
     changeImage();
 }
 
-void OStartMarker::zoom(const boost::rational<long>& _aZoom)
+void OStartMarker::zoom(const boost::rational<sal_Int64>& _aZoom)
 {
     setZoomFactor(_aZoom,*this);
     m_aVRuler.SetZoom(_aZoom);
diff --git a/reportdesign/source/ui/report/ViewsWindow.cxx b/reportdesign/source/ui/report/ViewsWindow.cxx
index 8c0e49f..8f0dd2a 100644
--- a/reportdesign/source/ui/report/ViewsWindow.cxx
+++ b/reportdesign/source/ui/report/ViewsWindow.cxx
@@ -263,7 +263,7 @@ void OViewsWindow::Paint( const Rectangle& rRect )
     Window::Paint( rRect );
 
     Size aOut = GetOutputSizePixel();
-    boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
+    boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
     aStartWidth *= GetMapMode().GetScaleX();
 
     aOut.Width() -= boost::rational_cast<long>(aStartWidth);
@@ -1685,11 +1685,11 @@ void OViewsWindow::collapseSections(const uno::Sequence< beans::PropertyValue>&
     }
 }
 
-void OViewsWindow::zoom(const boost::rational<long>& _aZoom)
+void OViewsWindow::zoom(const boost::rational<sal_Int64>& _aZoom)
 {
     const MapMode& aMapMode = GetMapMode();
 
-    boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
+    boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
     if ( _aZoom < aMapMode.GetScaleX() )
         aStartWidth *= aMapMode.GetScaleX();
     else
diff --git a/reportdesign/source/ui/report/dlgedfunc.cxx b/reportdesign/source/ui/report/dlgedfunc.cxx
index 33b12ae..b8274f5 100644
--- a/reportdesign/source/ui/report/dlgedfunc.cxx
+++ b/reportdesign/source/ui/report/dlgedfunc.cxx
@@ -78,7 +78,7 @@ void DlgEdFunc::ForceScroll( const Point& rPos )
     OScrollWindowHelper* pScrollWindow = pReportWindow->getScrollWindow();
 
     Size aOut = pReportWindow->GetOutputSizePixel();
-    boost::rational<long> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
+    boost::rational<sal_Int64> aStartWidth(long(REPORT_STARTMARKER_WIDTH));
     aStartWidth *= m_pParent->GetMapMode().GetScaleX();
 
     aOut.Width() -= boost::rational_cast<long>(aStartWidth);
diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index 50204b3..560729b 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -456,12 +456,12 @@ public:
 
     long GetNeededSize(
         SCROW nRow, OutputDevice* pDev, double nPPTX, double nPPTY,
-        const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY,
+        const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY,
         bool bWidth, const ScNeededSizeOptions& rOptions, const ScPatternAttr** pPatternChange ) const;
 
     sal_uInt16 GetOptimalColWidth(
         OutputDevice* pDev, double nPPTX, double nPPTY,
-        const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY,
+        const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY,
         bool bFormula, sal_uInt16 nOldWidth, const ScMarkData* pMarkData, const ScColWidthParam* pParam) const;
 
     void GetOptimalHeight(
diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx
index 93f33bd..9a79674 100644
--- a/sc/inc/document.hxx
+++ b/sc/inc/document.hxx
@@ -1453,7 +1453,7 @@ public:
     void            StyleSheetChanged( const SfxStyleSheetBase* pStyleSheet, bool bRemoved,
                                         OutputDevice* pDev,
                                         double nPPTX, double nPPTY,
-                                        const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY );
+                                        const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY );
 
     bool            IsStyleSheetUsed( const ScStyleSheet& rStyle, bool bGatherAllStyles ) const;
 
@@ -1521,7 +1521,7 @@ public:
 
     sal_uInt16          GetOptimalColWidth( SCCOL nCol, SCTAB nTab, OutputDevice* pDev,
                                         double nPPTX, double nPPTY,
-                                        const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY,
+                                        const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY,
                                         bool bFormula,
                                         const ScMarkData* pMarkData = NULL,
                                         const ScColWidthParam* pParam = NULL );
@@ -1534,7 +1534,7 @@ public:
     long            GetNeededSize( SCCOL nCol, SCROW nRow, SCTAB nTab,
                                     OutputDevice* pDev,
                                     double nPPTX, double nPPTY,
-                                    const boost::rational<long>& rZoomX, const boost::rational<long>& rZoomY,
+                                    const boost::rational<sal_Int64>& rZoomX, const boost::rational<sal_Int64>& rZoomY,
                                     bool bWidth, bool bTotalSize = false );
 
     SC_DLLPUBLIC void           ShowCol(SCCOL nCol, SCTAB nTab, bool bShow);
diff --git a/sc/inc/editutil.hxx b/sc/inc/editutil.hxx
index d3f7b3b..9e56431 100644
--- a/sc/inc/editutil.hxx
+++ b/sc/inc/editutil.hxx
@@ -44,8 +44,8 @@ class ScEditUtil
     OutputDevice*   pDev;           // MapMode has to be set

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list