summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--basic/source/runtime/methods1.cxx1
-rw-r--r--cui/source/tabpages/grfpage.cxx1
-rw-r--r--dbaccess/source/ui/inc/JoinController.hxx1
-rw-r--r--desktop/source/lib/init.cxx1
-rw-r--r--drawinglayer/source/primitive2d/metafileprimitive2d.cxx1
-rw-r--r--editeng/source/editeng/impedit.hxx1
-rw-r--r--filter/source/graphicfilter/eos2met/eos2met.cxx1
-rw-r--r--filter/source/graphicfilter/epict/epict.cxx1
-rw-r--r--filter/source/graphicfilter/eps/eps.cxx1
-rw-r--r--filter/source/graphicfilter/ios2met/ios2met.cxx1
-rw-r--r--filter/source/graphicfilter/ipict/ipict.cxx1
-rw-r--r--filter/source/graphicfilter/ipsd/ipsd.cxx1
-rw-r--r--filter/source/graphicfilter/itiff/itiff.cxx1
-rw-r--r--include/oox/export/shapes.hxx1
-rw-r--r--include/svtools/ruler.hxx1
-rw-r--r--include/svx/svdetc.hxx1
-rw-r--r--include/svx/svdmodel.hxx1
-rw-r--r--include/vcl/mapmod.hxx50
-rw-r--r--sd/source/filter/eppt/epptbase.hxx1
-rw-r--r--sd/source/ui/inc/animobjs.hxx1
-rw-r--r--sd/source/ui/inc/copydlg.hxx1
-rw-r--r--sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx1
-rw-r--r--sfx2/source/doc/objembed.cxx1
-rw-r--r--svtools/source/brwbox/brwbox1.cxx1
-rw-r--r--svtools/source/brwbox/brwbox2.cxx1
-rw-r--r--svtools/source/brwbox/datwin.cxx1
-rw-r--r--svtools/source/control/ctrltool.cxx1
-rw-r--r--svtools/source/filter/DocumentToGraphicRenderer.cxx2
-rw-r--r--svtools/source/filter/exportdialog.cxx1
-rw-r--r--svtools/source/graphic/grfmgr.cxx1
-rw-r--r--svtools/source/graphic/provider.cxx1
-rw-r--r--svtools/source/misc/imap.cxx1
-rw-r--r--svx/source/dialog/pagectrl.cxx1
-rw-r--r--svx/source/fmcomp/gridctrl.cxx1
-rw-r--r--svx/source/sdr/overlay/overlaymanagerbuffered.cxx1
-rw-r--r--svx/source/sdr/properties/itemsettools.cxx1
-rw-r--r--svx/source/sidebar/possize/PosSizePropertyPanel.hxx1
-rw-r--r--svx/source/svdraw/svdfmtf.hxx1
-rw-r--r--sw/source/core/docnode/ndnotxt.cxx1
-rw-r--r--sw/source/core/graphic/ndgrf.cxx1
-rw-r--r--sw/source/core/layout/anchoreddrawobject.cxx1
-rw-r--r--sw/source/core/view/pagepreviewlayout.cxx1
-rw-r--r--sw/source/core/view/viewpg.cxx1
-rw-r--r--sw/source/filter/html/htmlflywriter.cxx1
-rw-r--r--sw/source/uibase/frmdlg/colex.cxx1
-rw-r--r--sw/source/uibase/inc/pview.hxx1
-rw-r--r--toolkit/source/awt/vclxtoolkit.cxx1
-rw-r--r--toolkit/source/awt/vclxwindow.cxx1
-rw-r--r--vcl/inc/window.h1
-rw-r--r--vcl/source/filter/graphicfilter.cxx1
-rw-r--r--vcl/source/filter/graphicfilter2.cxx1
-rw-r--r--vcl/source/filter/jpeg/JpegReader.cxx1
-rw-r--r--vcl/source/filter/sgfbram.cxx1
-rw-r--r--vcl/source/filter/sgvmain.cxx1
-rw-r--r--vcl/source/filter/sgvtext.cxx1
-rw-r--r--vcl/source/filter/wmf/emfwr.cxx1
-rw-r--r--vcl/source/filter/wmf/winmtf.cxx1
-rw-r--r--vcl/source/filter/wmf/winwmf.cxx1
-rw-r--r--vcl/source/filter/wmf/wmfwr.cxx1
-rw-r--r--vcl/source/gdi/cvtsvm.cxx1
-rw-r--r--vcl/source/gdi/dibtools.cxx1
-rw-r--r--vcl/source/gdi/gdimtf.cxx1
-rw-r--r--vcl/source/gdi/impgraph.cxx1
-rw-r--r--vcl/source/gdi/mapmod.cxx52
-rw-r--r--vcl/source/gdi/pdfwriter_impl.cxx1
-rw-r--r--vcl/source/gdi/pdfwriter_impl2.cxx2
-rw-r--r--vcl/source/gdi/textlayout.cxx1
-rw-r--r--vcl/source/outdev/map.cxx11
68 files changed, 128 insertions, 52 deletions
diff --git a/basic/source/runtime/methods1.cxx b/basic/source/runtime/methods1.cxx
index 94ee18bd2161..3877ca6fc754 100644
--- a/basic/source/runtime/methods1.cxx
+++ b/basic/source/runtime/methods1.cxx
@@ -34,6 +34,7 @@
#include <basic/sbx.hxx>
#include <svl/zforlist.hxx>
#include <tools/urlobj.hxx>
+#include <tools/fract.hxx>
#include <osl/file.hxx>
#include <vcl/jobset.hxx>
#include "sbobjmod.hxx"
diff --git a/cui/source/tabpages/grfpage.cxx b/cui/source/tabpages/grfpage.cxx
index c1318d55381e..c9ced2ca8033 100644
--- a/cui/source/tabpages/grfpage.cxx
+++ b/cui/source/tabpages/grfpage.cxx
@@ -30,6 +30,7 @@
#include <svx/grfcrop.hxx>
#include <rtl/ustring.hxx>
#include <cuires.hrc>
+#include <tools/fract.hxx>
#include <svx/dialogs.hrc>
#include <vcl/builder.hxx>
#include <vcl/settings.hxx>
diff --git a/dbaccess/source/ui/inc/JoinController.hxx b/dbaccess/source/ui/inc/JoinController.hxx
index d4faccffed41..bfbfc560544b 100644
--- a/dbaccess/source/ui/inc/JoinController.hxx
+++ b/dbaccess/source/ui/inc/JoinController.hxx
@@ -26,6 +26,7 @@
#include "JoinDesignView.hxx"
#include "TableConnectionData.hxx"
#include "TableWindowData.hxx"
+#include <tools/fract.hxx>
#include <memory>
namespace comphelper
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index 62ab3ec8e1a5..fcef5b0a25c2 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -39,6 +39,7 @@
#include <vcl/svapp.hxx>
#include <tools/resmgr.hxx>
+#include <tools/fract.hxx>
#include <vcl/graphicfilter.hxx>
#include <vcl/sysdata.hxx>
#include <vcl/virdev.hxx>
diff --git a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
index 0ec21fd19a98..96ff8bdcde73 100644
--- a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
@@ -52,6 +52,7 @@
#include <drawinglayer/primitive2d/textlineprimitive2d.hxx>
#include <drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx>
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
+#include <tools/fract.hxx>
#include <numeric>
diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx
index 9c44b36ddffb..c6e41d48ee28 100644
--- a/editeng/source/editeng/impedit.hxx
+++ b/editeng/source/editeng/impedit.hxx
@@ -32,6 +32,7 @@
#include <vcl/virdev.hxx>
#include <vcl/gdimtf.hxx>
#include <vcl/cursor.hxx>
+#include <tools/fract.hxx>
#include <vcl/dndhelp.hxx>
#include <svl/ondemand.hxx>
diff --git a/filter/source/graphicfilter/eos2met/eos2met.cxx b/filter/source/graphicfilter/eos2met/eos2met.cxx
index aa64100a7841..8975fdab5538 100644
--- a/filter/source/graphicfilter/eos2met/eos2met.cxx
+++ b/filter/source/graphicfilter/eos2met/eos2met.cxx
@@ -25,6 +25,7 @@
#include <vcl/metaact.hxx>
#include <vcl/salbtype.hxx>
#include <tools/poly.hxx>
+#include <tools/fract.hxx>
#include <vcl/graph.hxx>
#include <vcl/gradient.hxx>
#include <vcl/hatch.hxx>
diff --git a/filter/source/graphicfilter/epict/epict.cxx b/filter/source/graphicfilter/epict/epict.cxx
index 993e1d36d67a..463f1d9a83bb 100644
--- a/filter/source/graphicfilter/epict/epict.cxx
+++ b/filter/source/graphicfilter/epict/epict.cxx
@@ -34,6 +34,7 @@
#include <vcl/msgbox.hxx>
#include <vcl/gdimtf.hxx>
#include <tools/bigint.hxx>
+#include <tools/fract.hxx>
#include <o3tl/numeric.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
diff --git a/filter/source/graphicfilter/eps/eps.cxx b/filter/source/graphicfilter/eps/eps.cxx
index 19465a6505bd..2b4a82e113e0 100644
--- a/filter/source/graphicfilter/eps/eps.cxx
+++ b/filter/source/graphicfilter/eps/eps.cxx
@@ -20,6 +20,7 @@
#include <tools/solar.h>
#include <tools/stream.hxx>
#include <tools/poly.hxx>
+#include <tools/fract.hxx>
#include <vcl/svapp.hxx>
#include <vcl/metaact.hxx>
#include <vcl/graph.hxx>
diff --git a/filter/source/graphicfilter/ios2met/ios2met.cxx b/filter/source/graphicfilter/ios2met/ios2met.cxx
index 2116ac10ca00..5f1d17f16b00 100644
--- a/filter/source/graphicfilter/ios2met/ios2met.cxx
+++ b/filter/source/graphicfilter/ios2met/ios2met.cxx
@@ -19,6 +19,7 @@
#include <osl/thread.h>
#include <tools/poly.hxx>
+#include <tools/fract.hxx>
#include <vcl/graph.hxx>
#include <vcl/dibtools.hxx>
#include <vcl/virdev.hxx>
diff --git a/filter/source/graphicfilter/ipict/ipict.cxx b/filter/source/graphicfilter/ipict/ipict.cxx
index b6e2d77d09a5..dec3fc664de9 100644
--- a/filter/source/graphicfilter/ipict/ipict.cxx
+++ b/filter/source/graphicfilter/ipict/ipict.cxx
@@ -22,6 +22,7 @@
#include <vcl/bmpacc.hxx>
#include <vcl/graph.hxx>
#include <tools/poly.hxx>
+#include <tools/fract.hxx>
#include <vcl/virdev.hxx>
#include <math.h>
diff --git a/filter/source/graphicfilter/ipsd/ipsd.cxx b/filter/source/graphicfilter/ipsd/ipsd.cxx
index 451a4bff0c70..95b9e937a429 100644
--- a/filter/source/graphicfilter/ipsd/ipsd.cxx
+++ b/filter/source/graphicfilter/ipsd/ipsd.cxx
@@ -21,6 +21,7 @@
#include <vcl/graph.hxx>
#include <vcl/bmpacc.hxx>
#include <vcl/outdev.hxx>
+#include <tools/fract.hxx>
#include <boost/scoped_array.hpp>
class FilterConfigItem;
diff --git a/filter/source/graphicfilter/itiff/itiff.cxx b/filter/source/graphicfilter/itiff/itiff.cxx
index 4606271017a9..719f51d997c2 100644
--- a/filter/source/graphicfilter/itiff/itiff.cxx
+++ b/filter/source/graphicfilter/itiff/itiff.cxx
@@ -23,6 +23,7 @@
#include <vcl/graph.hxx>
#include <vcl/bmpacc.hxx>
#include <vcl/animate.hxx>
+#include <tools/fract.hxx>
#include "lzwdecom.hxx"
#include "ccidecom.hxx"
diff --git a/include/oox/export/shapes.hxx b/include/oox/export/shapes.hxx
index 995ef356bae7..f0dcdcc237de 100644
--- a/include/oox/export/shapes.hxx
+++ b/include/oox/export/shapes.hxx
@@ -25,6 +25,7 @@
#include <oox/export/drawingml.hxx>
#include <sax/fshelper.hxx>
#include <vcl/mapmod.hxx>
+#include <tools/fract.hxx>
#include <boost/unordered_map.hpp>
namespace com { namespace sun { namespace star {
diff --git a/include/svtools/ruler.hxx b/include/svtools/ruler.hxx
index 49d4e424da4b..10a2bd097fe5 100644
--- a/include/svtools/ruler.hxx
+++ b/include/svtools/ruler.hxx
@@ -22,6 +22,7 @@
#include <svtools/svtdllapi.h>
#include <tools/link.hxx>
+#include <tools/fract.hxx>
#include <vcl/window.hxx>
#include <vcl/virdev.hxx>
#include <vcl/field.hxx>
diff --git a/include/svx/svdetc.hxx b/include/svx/svdetc.hxx
index c3e451070316..df6778f5b002 100644
--- a/include/svx/svdetc.hxx
+++ b/include/svx/svdetc.hxx
@@ -24,6 +24,7 @@
#include <editeng/outliner.hxx>
#include <svx/svxdllapi.h>
#include <tools/shl.hxx>
+#include <tools/fract.hxx>
#include <vcl/outdev.hxx>
diff --git a/include/svx/svdmodel.hxx b/include/svx/svdmodel.hxx
index f51b6b5c8547..3e4b31e54e1b 100644
--- a/include/svx/svdmodel.hxx
+++ b/include/svx/svdmodel.hxx
@@ -30,6 +30,7 @@
#include <vcl/mapmod.hxx>
#include <svl/SfxBroadcaster.hxx>
#include <tools/datetime.hxx>
+#include <tools/fract.hxx>
#include <svl/hint.hxx>
#include <svl/style.hxx>
diff --git a/include/vcl/mapmod.hxx b/include/vcl/mapmod.hxx
index 10e06d2e9ca3..7ec4ca50239b 100644
--- a/include/vcl/mapmod.hxx
+++ b/include/vcl/mapmod.hxx
@@ -21,41 +21,14 @@
#define INCLUDED_VCL_MAPMOD_HXX
#include <tools/gen.hxx>
-#include <tools/fract.hxx>
#include <tools/solar.h>
#include <vcl/dllapi.h>
#include <tools/resid.hxx>
#include <tools/mapunit.hxx>
+class Fraction;
class SvStream;
-
-
-// - ImplMapMode -
-
-
-class OutputDevice;
-
-class ImplMapMode
-{
- friend class MapMode;
- friend class OutputDevice;
-
-private:
- sal_uLong mnRefCount;
- MapUnit meUnit;
- Point maOrigin;
- Fraction maScaleX;
- Fraction maScaleY;
- bool mbSimple;
-
- friend SvStream& ReadImplMapMode( SvStream& rIStm, ImplMapMode& rMapMode );
- friend SvStream& WriteImplMapMode( SvStream& rOStm, const ImplMapMode& rMapMode );
-
- static ImplMapMode* ImplGetStaticMapMode( MapUnit eUnit );
-public:
- ImplMapMode();
- ImplMapMode( const ImplMapMode& rImpMapMode );
-};
+class OutputDevice;
// - MapMode -
@@ -65,10 +38,14 @@ class VCL_DLLPUBLIC MapMode
{
friend class OutputDevice;
+public:
+ struct ImplMapMode;
+
private:
ImplMapMode* mpImplMapMode;
SAL_DLLPRIVATE void ImplMakeUnique();
+ SAL_DLLPRIVATE bool IsSimple() const;
public:
MapMode();
@@ -79,27 +56,22 @@ public:
~MapMode();
void SetMapUnit( MapUnit eUnit );
- MapUnit GetMapUnit() const
- { return mpImplMapMode->meUnit; }
+ MapUnit GetMapUnit() const;
void SetOrigin( const Point& rOrigin );
- const Point& GetOrigin() const
- { return mpImplMapMode->maOrigin; }
+ const Point& GetOrigin() const;
void SetScaleX( const Fraction& rScaleX );
- const Fraction& GetScaleX() const
- { return mpImplMapMode->maScaleX; }
+ const Fraction& GetScaleX() const;
void SetScaleY( const Fraction& rScaleY );
- const Fraction& GetScaleY() const
- { return mpImplMapMode->maScaleY; }
+ const Fraction& GetScaleY() const;
MapMode& operator=( const MapMode& rMapMode );
bool operator==( const MapMode& rMapMode ) const;
bool operator!=( const MapMode& rMapMode ) const
{ return !(MapMode::operator==( rMapMode )); }
bool IsDefault() const;
- bool IsSameInstance( const MapMode& rMapMode ) const
- { return (mpImplMapMode == rMapMode.mpImplMapMode); }
+ bool IsSameInstance( const MapMode& rMapMode ) const;
friend VCL_DLLPUBLIC SvStream& ReadMapMode( SvStream& rIStm, MapMode& rMapMode );
friend VCL_DLLPUBLIC SvStream& WriteMapMode( SvStream& rOStm, const MapMode& rMapMode );
diff --git a/sd/source/filter/eppt/epptbase.hxx b/sd/source/filter/eppt/epptbase.hxx
index 0141621a5533..4b552a51ff38 100644
--- a/sd/source/filter/eppt/epptbase.hxx
+++ b/sd/source/filter/eppt/epptbase.hxx
@@ -25,6 +25,7 @@
#include <vcl/mapmod.hxx>
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <tools/gen.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
diff --git a/sd/source/ui/inc/animobjs.hxx b/sd/source/ui/inc/animobjs.hxx
index 9e720ad04260..c4fe3bf9d337 100644
--- a/sd/source/ui/inc/animobjs.hxx
+++ b/sd/source/ui/inc/animobjs.hxx
@@ -23,6 +23,7 @@
#include <sfx2/dockwin.hxx>
#include <vcl/fixed.hxx>
#include <svtools/stdctrl.hxx>
+#include <tools/fract.hxx>
#include <vcl/group.hxx>
#include <sfx2/ctrlitem.hxx>
diff --git a/sd/source/ui/inc/copydlg.hxx b/sd/source/ui/inc/copydlg.hxx
index 7994e0c1c08b..7a9d696f62e1 100644
--- a/sd/source/ui/inc/copydlg.hxx
+++ b/sd/source/ui/inc/copydlg.hxx
@@ -26,6 +26,7 @@
#include <vcl/field.hxx>
#include <vcl/fixed.hxx>
#include <sfx2/basedlgs.hxx>
+#include <tools/fract.hxx>
namespace sd {
diff --git a/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx b/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx
index 7e0e20b828ba..0916912ef48e 100644
--- a/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx
+++ b/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx
@@ -26,6 +26,7 @@
#include <boost/function.hpp>
#include <tools/gen.hxx>
+#include <tools/fract.hxx>
namespace sd { namespace slidesorter { namespace view {
diff --git a/sfx2/source/doc/objembed.cxx b/sfx2/source/doc/objembed.cxx
index 1ce7b6717fdb..3daaa45be28d 100644
--- a/sfx2/source/doc/objembed.cxx
+++ b/sfx2/source/doc/objembed.cxx
@@ -34,6 +34,7 @@
#include <comphelper/processfactory.hxx>
#include <comphelper/storagehelper.hxx>
#include <svtools/embedtransfer.hxx>
+#include <tools/fract.hxx>
#include <vcl/outdev.hxx>
#include <vcl/gdimtf.hxx>
diff --git a/svtools/source/brwbox/brwbox1.cxx b/svtools/source/brwbox/brwbox1.cxx
index fbb1047fe895..657d29c3c92d 100644
--- a/svtools/source/brwbox/brwbox1.cxx
+++ b/svtools/source/brwbox/brwbox1.cxx
@@ -23,6 +23,7 @@
#include "datwin.hxx"
#include <tools/debug.hxx>
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <functional>
#include <algorithm>
diff --git a/svtools/source/brwbox/brwbox2.cxx b/svtools/source/brwbox/brwbox2.cxx
index 7e7e7eab5e2f..b64b7c4d70a4 100644
--- a/svtools/source/brwbox/brwbox2.cxx
+++ b/svtools/source/brwbox/brwbox2.cxx
@@ -25,6 +25,7 @@
#include <vcl/settings.hxx>
#include <tools/multisel.hxx>
+#include <tools/fract.hxx>
#include <algorithm>
using namespace ::com::sun::star::datatransfer;
diff --git a/svtools/source/brwbox/datwin.cxx b/svtools/source/brwbox/datwin.cxx
index 027eb0353253..e4412fb3ac60 100644
--- a/svtools/source/brwbox/datwin.cxx
+++ b/svtools/source/brwbox/datwin.cxx
@@ -26,6 +26,7 @@
#include <vcl/settings.hxx>
#include <rtl/string.hxx>
#include <tools/debug.hxx>
+#include <tools/fract.hxx>
void ButtonFrame::Draw( OutputDevice& rDev )
diff --git a/svtools/source/control/ctrltool.cxx b/svtools/source/control/ctrltool.cxx
index 4308379d6012..0c6f7904f09f 100644
--- a/svtools/source/control/ctrltool.cxx
+++ b/svtools/source/control/ctrltool.cxx
@@ -21,6 +21,7 @@
#include <comphelper/string.hxx>
#include <tools/debug.hxx>
+#include <tools/fract.hxx>
#include <i18nlangtag/mslangid.hxx>
#include <vcl/window.hxx>
#include <vcl/svapp.hxx>
diff --git a/svtools/source/filter/DocumentToGraphicRenderer.cxx b/svtools/source/filter/DocumentToGraphicRenderer.cxx
index 42bc0b22f65e..6078a3a6221a 100644
--- a/svtools/source/filter/DocumentToGraphicRenderer.cxx
+++ b/svtools/source/filter/DocumentToGraphicRenderer.cxx
@@ -23,6 +23,8 @@
#include <vcl/svapp.hxx>
#include <vcl/outdev.hxx>
+#include <tools/fract.hxx>
+
#include <com/sun/star/awt/XDevice.hpp>
#include <com/sun/star/text/XPageCursor.hpp>
#include <com/sun/star/text/XTextViewCursorSupplier.hpp>
diff --git a/svtools/source/filter/exportdialog.cxx b/svtools/source/filter/exportdialog.cxx
index 78ee4385a2e4..172861493557 100644
--- a/svtools/source/filter/exportdialog.cxx
+++ b/svtools/source/filter/exportdialog.cxx
@@ -23,6 +23,7 @@
#endif
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <vcl/graphicfilter.hxx>
#include <vcl/FilterConfigItem.hxx>
#include <svtools/svtools.hrc>
diff --git a/svtools/source/graphic/grfmgr.cxx b/svtools/source/graphic/grfmgr.cxx
index f8dbc4e2ed59..f7c6ec6b75cd 100644
--- a/svtools/source/graphic/grfmgr.cxx
+++ b/svtools/source/graphic/grfmgr.cxx
@@ -23,6 +23,7 @@
#include <officecfg/Office/Common.hxx>
#include <tools/vcompat.hxx>
+#include <tools/fract.hxx>
#include <tools/helpers.hxx>
#include <unotools/ucbstreamhelper.hxx>
#include <unotools/localfilehelper.hxx>
diff --git a/svtools/source/graphic/provider.cxx b/svtools/source/graphic/provider.cxx
index c8f35378fb6d..25735e843387 100644
--- a/svtools/source/graphic/provider.cxx
+++ b/svtools/source/graphic/provider.cxx
@@ -26,6 +26,7 @@
#include <tools/rcid.h>
#include <tools/resid.hxx>
#include <tools/resmgr.hxx>
+#include <tools/fract.hxx>
#include <unotools/ucbstreamhelper.hxx>
#include <vcl/graphicfilter.hxx>
#include <vcl/wmf.hxx>
diff --git a/svtools/source/misc/imap.cxx b/svtools/source/misc/imap.cxx
index 344372d279de..7be622f93786 100644
--- a/svtools/source/misc/imap.cxx
+++ b/svtools/source/misc/imap.cxx
@@ -19,6 +19,7 @@
#include <tools/urlobj.hxx>
+#include <tools/fract.hxx>
#include <vcl/svapp.hxx>
#include <vcl/mapmod.hxx>
#include <vcl/window.hxx>
diff --git a/svx/source/dialog/pagectrl.cxx b/svx/source/dialog/pagectrl.cxx
index fa7b9befa814..08a7e9cbf740 100644
--- a/svx/source/dialog/pagectrl.cxx
+++ b/svx/source/dialog/pagectrl.cxx
@@ -20,6 +20,7 @@
#include <vcl/bitmap.hxx>
#include <vcl/builder.hxx>
#include <vcl/settings.hxx>
+#include <tools/fract.hxx>
#include <editeng/frmdiritem.hxx>
#include <svx/pageitem.hxx>
#include <svx/pagectrl.hxx>
diff --git a/svx/source/fmcomp/gridctrl.cxx b/svx/source/fmcomp/gridctrl.cxx
index f42ef319b9bc..ddd46801a458 100644
--- a/svx/source/fmcomp/gridctrl.cxx
+++ b/svx/source/fmcomp/gridctrl.cxx
@@ -44,6 +44,7 @@
#include <comphelper/processfactory.hxx>
#include <tools/resid.hxx>
#include <tools/diagnose_ex.h>
+#include <tools/fract.hxx>
#include <vcl/menu.hxx>
#include <vcl/settings.hxx>
diff --git a/svx/source/sdr/overlay/overlaymanagerbuffered.cxx b/svx/source/sdr/overlay/overlaymanagerbuffered.cxx
index dde69b38914c..da55e63b024c 100644
--- a/svx/source/sdr/overlay/overlaymanagerbuffered.cxx
+++ b/svx/source/sdr/overlay/overlaymanagerbuffered.cxx
@@ -25,6 +25,7 @@
#include <vcl/window.hxx>
#include <vcl/bitmap.hxx>
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <vcl/cursor.hxx>
#include <vcl/dibtools.hxx>
diff --git a/svx/source/sdr/properties/itemsettools.cxx b/svx/source/sdr/properties/itemsettools.cxx
index 191d3e7d3b83..c044c322e88b 100644
--- a/svx/source/sdr/properties/itemsettools.cxx
+++ b/svx/source/sdr/properties/itemsettools.cxx
@@ -19,6 +19,7 @@
#include <sdr/properties/itemsettools.hxx>
#include <tools/debug.hxx>
+#include <tools/fract.hxx>
#include <svl/itemset.hxx>
#include <svl/whiter.hxx>
#include <svx/svdogrp.hxx>
diff --git a/svx/source/sidebar/possize/PosSizePropertyPanel.hxx b/svx/source/sidebar/possize/PosSizePropertyPanel.hxx
index 9a3685cd4134..e9880c46974f 100644
--- a/svx/source/sidebar/possize/PosSizePropertyPanel.hxx
+++ b/svx/source/sidebar/possize/PosSizePropertyPanel.hxx
@@ -28,6 +28,7 @@
#include <svx/sidebar/PanelLayout.hxx>
#include <svl/poolitem.hxx>
#include <tools/fldunit.hxx>
+#include <tools/fract.hxx>
#include <com/sun/star/ui/XSidebar.hpp>
class DialControl;
diff --git a/svx/source/svdraw/svdfmtf.hxx b/svx/source/svdraw/svdfmtf.hxx
index 16e2dddcc5ce..86632964acb1 100644
--- a/svx/source/svdraw/svdfmtf.hxx
+++ b/svx/source/svdraw/svdfmtf.hxx
@@ -21,6 +21,7 @@
#define INCLUDED_SVX_SOURCE_SVDRAW_SVDFMTF_HXX
#include <tools/contnr.hxx>
+#include <tools/fract.hxx>
#include <vcl/metaact.hxx>
#include <vcl/virdev.hxx>
#include <svx/svdobj.hxx>
diff --git a/sw/source/core/docnode/ndnotxt.cxx b/sw/source/core/docnode/ndnotxt.cxx
index dfb38b1f7bfe..32fe1c885a7d 100644
--- a/sw/source/core/docnode/ndnotxt.cxx
+++ b/sw/source/core/docnode/ndnotxt.cxx
@@ -19,6 +19,7 @@
#include <hintids.hxx>
#include <tools/poly.hxx>
+#include <tools/fract.hxx>
#include <svl/stritem.hxx>
#include <svx/contdlg.hxx>
#include <vcl/svapp.hxx>
diff --git a/sw/source/core/graphic/ndgrf.cxx b/sw/source/core/graphic/ndgrf.cxx
index 47c27405a48d..f9cbb9cf016b 100644
--- a/sw/source/core/graphic/ndgrf.cxx
+++ b/sw/source/core/graphic/ndgrf.cxx
@@ -21,6 +21,7 @@
#include <mdiexp.hxx>
#include <tools/helpers.hxx>
#include <tools/urlobj.hxx>
+#include <tools/fract.hxx>
#include <svl/undo.hxx>
#include <svl/fstathelper.hxx>
#include <svtools/imap.hxx>
diff --git a/sw/source/core/layout/anchoreddrawobject.cxx b/sw/source/core/layout/anchoreddrawobject.cxx
index 628ed1356d5b..60b958ffaf3d 100644
--- a/sw/source/core/layout/anchoreddrawobject.cxx
+++ b/sw/source/core/layout/anchoreddrawobject.cxx
@@ -27,6 +27,7 @@
#include <txtfrm.hxx>
#include <vector>
#include <svx/svdogrp.hxx>
+#include <tools/fract.hxx>
#include <DocumentSettingManager.hxx>
#include <IDocumentState.hxx>
#include <txtfly.hxx>
diff --git a/sw/source/core/view/pagepreviewlayout.cxx b/sw/source/core/view/pagepreviewlayout.cxx
index 3e8004ab1776..26ea7c01c5f3 100644
--- a/sw/source/core/view/pagepreviewlayout.cxx
+++ b/sw/source/core/view/pagepreviewlayout.cxx
@@ -23,6 +23,7 @@
#include <prevwpage.hxx>
#include <algorithm>
+#include <tools/fract.hxx>
#include <vcl/window.hxx>
#include <vcl/settings.hxx>
diff --git a/sw/source/core/view/viewpg.cxx b/sw/source/core/view/viewpg.cxx
index 601c710b54c1..7382d6899015 100644
--- a/sw/source/core/view/viewpg.cxx
+++ b/sw/source/core/view/viewpg.cxx
@@ -20,6 +20,7 @@
#include <com/sun/star/uno/Sequence.hxx>
#include <hintids.hxx>
+#include <tools/fract.hxx>
#include <vcl/window.hxx>
#include <vcl/oldprintadaptor.hxx>
#include <sfx2/printer.hxx>
diff --git a/sw/source/filter/html/htmlflywriter.cxx b/sw/source/filter/html/htmlflywriter.cxx
index 6a0d313b6316..65b5fad27e4b 100644
--- a/sw/source/filter/html/htmlflywriter.cxx
+++ b/sw/source/filter/html/htmlflywriter.cxx
@@ -23,6 +23,7 @@
#include <comphelper/string.hxx>
#include <svx/svxids.hrc>
#include "hintids.hxx"
+#include <tools/fract.hxx>
#include <svl/urihelper.hxx>
#include <vcl/svapp.hxx>
#include <vcl/wrkwin.hxx>
diff --git a/sw/source/uibase/frmdlg/colex.cxx b/sw/source/uibase/frmdlg/colex.cxx
index 7732db8b2690..f5e5b054d5e8 100644
--- a/sw/source/uibase/frmdlg/colex.cxx
+++ b/sw/source/uibase/frmdlg/colex.cxx
@@ -21,6 +21,7 @@
#include "hintids.hxx"
#include <algorithm>
#include <svl/eitem.hxx>
+#include <tools/fract.hxx>
#include <editeng/lrspitem.hxx>
#include <editeng/ulspitem.hxx>
#include <editeng/sizeitem.hxx>
diff --git a/sw/source/uibase/inc/pview.hxx b/sw/source/uibase/inc/pview.hxx
index 162ef375eb3a..548e3901245e 100644
--- a/sw/source/uibase/inc/pview.hxx
+++ b/sw/source/uibase/inc/pview.hxx
@@ -20,6 +20,7 @@
#define INCLUDED_SW_SOURCE_UIBASE_INC_PVIEW_HXX
#include <tools/link.hxx>
+#include <tools/fract.hxx>
#include <vcl/window.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/viewfac.hxx>
diff --git a/toolkit/source/awt/vclxtoolkit.cxx b/toolkit/source/awt/vclxtoolkit.cxx
index 932ac88cc12c..680fc0caa04b 100644
--- a/toolkit/source/awt/vclxtoolkit.cxx
+++ b/toolkit/source/awt/vclxtoolkit.cxx
@@ -55,6 +55,7 @@
#include <rtl/uuid.h>
#include <rtl/process.h>
#include <tools/link.hxx>
+#include <tools/fract.hxx>
#include <tools/wintypes.hxx>
#ifdef MACOSX
diff --git a/toolkit/source/awt/vclxwindow.cxx b/toolkit/source/awt/vclxwindow.cxx
index 8bdec5409e6d..69407624c926 100644
--- a/toolkit/source/awt/vclxwindow.cxx
+++ b/toolkit/source/awt/vclxwindow.cxx
@@ -47,6 +47,7 @@
#include <vcl/svapp.hxx>
#include <vcl/window.hxx>
#include <tools/color.hxx>
+#include <tools/fract.hxx>
#include <vcl/dockwin.hxx>
#include <vcl/pdfextoutdevdata.hxx>
#include <vcl/tabpage.hxx>
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index 431b512ee562..fe1c9fbaf133 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -27,6 +27,7 @@
#include <cppuhelper/weakref.hxx>
#include <list>
#include <tools/wintypes.hxx>
+#include <tools/fract.hxx>
#include <vcl/cursor.hxx>
#include <vcl/inputctx.hxx>
#include <vcl/outdev.hxx>
diff --git a/vcl/source/filter/graphicfilter.cxx b/vcl/source/filter/graphicfilter.cxx
index 8552488b629a..b47e6745c44d 100644
--- a/vcl/source/filter/graphicfilter.cxx
+++ b/vcl/source/filter/graphicfilter.cxx
@@ -26,6 +26,7 @@
#include <cppuhelper/implbase1.hxx>
#include <tools/urlobj.hxx>
#include <tools/zcodec.hxx>
+#include <tools/fract.hxx>
#include <vcl/dibtools.hxx>
#include <vcl/salctype.hxx>
#include <vcl/pngread.hxx>
diff --git a/vcl/source/filter/graphicfilter2.cxx b/vcl/source/filter/graphicfilter2.cxx
index a2bf39b7a58a..138b4fc47fb1 100644
--- a/vcl/source/filter/graphicfilter2.cxx
+++ b/vcl/source/filter/graphicfilter2.cxx
@@ -20,6 +20,7 @@
#include <string.h>
#include <stdio.h>
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <vcl/outdev.hxx>
#include <vcl/graphicfilter.hxx>
#include <unotools/ucbstreamhelper.hxx>
diff --git a/vcl/source/filter/jpeg/JpegReader.cxx b/vcl/source/filter/jpeg/JpegReader.cxx
index 08fdf1dfd328..1d400a5d55cb 100644
--- a/vcl/source/filter/jpeg/JpegReader.cxx
+++ b/vcl/source/filter/jpeg/JpegReader.cxx
@@ -28,6 +28,7 @@
#include <vcl/bmpacc.hxx>
#include <vcl/FilterConfigItem.hxx>
#include <vcl/graphicfilter.hxx>
+#include <tools/fract.hxx>
#include <boost/scoped_array.hpp>
#define JPEG_MIN_READ 512
diff --git a/vcl/source/filter/sgfbram.cxx b/vcl/source/filter/sgfbram.cxx
index 733b9c01b47a..8a05999223a7 100644
--- a/vcl/source/filter/sgfbram.cxx
+++ b/vcl/source/filter/sgfbram.cxx
@@ -20,6 +20,7 @@
#include <string.h>
#include <osl/endian.h>
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <vcl/gdimtf.hxx>
#include <tools/color.hxx>
#include <vcl/virdev.hxx>
diff --git a/vcl/source/filter/sgvmain.cxx b/vcl/source/filter/sgvmain.cxx
index f7b24328f072..18c51f356ac0 100644
--- a/vcl/source/filter/sgvmain.cxx
+++ b/vcl/source/filter/sgvmain.cxx
@@ -21,6 +21,7 @@
#include <osl/endian.h>
#include <vcl/graph.hxx>
#include <tools/poly.hxx>
+#include <tools/fract.hxx>
#include <vcl/graphicfilter.hxx>
#include "sgffilt.hxx"
#include "sgfbram.hxx"
diff --git a/vcl/source/filter/sgvtext.cxx b/vcl/source/filter/sgvtext.cxx
index 5c6c5430cd69..234be20688fc 100644
--- a/vcl/source/filter/sgvtext.cxx
+++ b/vcl/source/filter/sgvtext.cxx
@@ -24,6 +24,7 @@
#include <rtl/math.h>
#include <comphelper/string.hxx>
#include <tools/config.hxx>
+#include <tools/fract.hxx>
#include <vcl/graphicfilter.hxx>
#include "sgffilt.hxx"
#include "sgfbram.hxx"
diff --git a/vcl/source/filter/wmf/emfwr.cxx b/vcl/source/filter/wmf/emfwr.cxx
index b9c34fca7ff1..d0c3588b645b 100644
--- a/vcl/source/filter/wmf/emfwr.cxx
+++ b/vcl/source/filter/wmf/emfwr.cxx
@@ -24,6 +24,7 @@
#include "emfwr.hxx"
#include <rtl/strbuf.hxx>
#include <tools/helpers.hxx>
+#include <tools/fract.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <vcl/lineinfo.hxx>
diff --git a/vcl/source/filter/wmf/winmtf.cxx b/vcl/source/filter/wmf/winmtf.cxx
index 03596c477f75..e15f2e017e62 100644
--- a/vcl/source/filter/wmf/winmtf.cxx
+++ b/vcl/source/filter/wmf/winmtf.cxx
@@ -25,6 +25,7 @@
#include <vcl/canvastools.hxx>
#include <vcl/metric.hxx>
#include <vcl/svapp.hxx>
+#include <tools/fract.hxx>
#include <rtl/strbuf.hxx>
#include <rtl/tencinfo.h>
#include <vcl/virdev.hxx>
diff --git a/vcl/source/filter/wmf/winwmf.cxx b/vcl/source/filter/wmf/winwmf.cxx
index 819d9c203ac3..b7e63d7d2277 100644
--- a/vcl/source/filter/wmf/winwmf.cxx
+++ b/vcl/source/filter/wmf/winwmf.cxx
@@ -28,6 +28,7 @@
#include <osl/endian.h>
#include <vcl/svapp.hxx>
#include <vcl/dibtools.hxx>
+#include <tools/fract.hxx>
// MS Windows defines
diff --git a/vcl/source/filter/wmf/wmfwr.cxx b/vcl/source/filter/wmf/wmfwr.cxx
index fbfb5caf5d2d..e2b4aef85535 100644
--- a/vcl/source/filter/wmf/wmfwr.cxx
+++ b/vcl/source/filter/wmf/wmfwr.cxx
@@ -29,6 +29,7 @@
#include <tools/bigint.hxx>
#include <tools/helpers.hxx>
#include <tools/tenccvt.hxx>
+#include <tools/fract.hxx>
#include <osl/endian.h>
#include <vcl/dibtools.hxx>
#include <vcl/metric.hxx>
diff --git a/vcl/source/gdi/cvtsvm.cxx b/vcl/source/gdi/cvtsvm.cxx
index 9e560776da1c..c8676c04ac3f 100644
--- a/vcl/source/gdi/cvtsvm.cxx
+++ b/vcl/source/gdi/cvtsvm.cxx
@@ -21,6 +21,7 @@
#include <string.h>
#include <osl/thread.h>
#include <tools/debug.hxx>
+#include <tools/fract.hxx>
#include <tools/stream.hxx>
#include <tools/helpers.hxx>
#include <vcl/dibtools.hxx>
diff --git a/vcl/source/gdi/dibtools.cxx b/vcl/source/gdi/dibtools.cxx
index 975051322bc0..af6a78ebb222 100644
--- a/vcl/source/gdi/dibtools.cxx
+++ b/vcl/source/gdi/dibtools.cxx
@@ -25,6 +25,7 @@
#include <vcl/dibtools.hxx>
#include <tools/zcodec.hxx>
#include <tools/stream.hxx>
+#include <tools/fract.hxx>
#include <vcl/bitmapex.hxx>
#include <vcl/bmpacc.hxx>
#include <vcl/outdev.hxx>
diff --git a/vcl/source/gdi/gdimtf.cxx b/vcl/source/gdi/gdimtf.cxx
index a767f8553e71..cb7194953a96 100644
--- a/vcl/source/gdi/gdimtf.cxx
+++ b/vcl/source/gdi/gdimtf.cxx
@@ -20,6 +20,7 @@
#include <rtl/crc.h>
#include <tools/stream.hxx>
#include <tools/vcompat.hxx>
+#include <tools/fract.hxx>
#include <vcl/metaact.hxx>
#include <vcl/salbtype.hxx>
#include <vcl/outdev.hxx>
diff --git a/vcl/source/gdi/impgraph.cxx b/vcl/source/gdi/impgraph.cxx
index 9a1b818ffafd..6d9c3ea51525 100644
--- a/vcl/source/gdi/impgraph.cxx
+++ b/vcl/source/gdi/impgraph.cxx
@@ -20,6 +20,7 @@
#include "sal/config.h"
#include <comphelper/processfactory.hxx>
+#include <tools/fract.hxx>
#include <tools/vcompat.hxx>
#include <tools/urlobj.hxx>
#include <tools/debug.hxx>
diff --git a/vcl/source/gdi/mapmod.cxx b/vcl/source/gdi/mapmod.cxx
index 992898e0164e..62852d37adbb 100644
--- a/vcl/source/gdi/mapmod.cxx
+++ b/vcl/source/gdi/mapmod.cxx
@@ -17,12 +17,35 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <vcl/mapmod.hxx>
+
+#include <tools/fract.hxx>
#include <tools/stream.hxx>
#include <tools/vcompat.hxx>
#include <tools/debug.hxx>
-#include <vcl/mapmod.hxx>
-ImplMapMode::ImplMapMode() :
+
+// - ImplMapMode -
+
+struct MapMode::ImplMapMode
+{
+ sal_uLong mnRefCount;
+ MapUnit meUnit;
+ Point maOrigin;
+ Fraction maScaleX;
+ Fraction maScaleY;
+ bool mbSimple;
+
+ friend SvStream& ReadImplMapMode(SvStream& rIStm, ImplMapMode& rMapMode);
+ friend SvStream& WriteImplMapMode(SvStream& rOStm, const ImplMapMode& rMapMode);
+
+ static ImplMapMode* ImplGetStaticMapMode( MapUnit eUnit );
+
+ ImplMapMode();
+ ImplMapMode(const ImplMapMode& rImpMapMode);
+};
+
+MapMode::ImplMapMode::ImplMapMode() :
maOrigin( 0, 0 ),
maScaleX( 1, 1 ),
maScaleY( 1, 1 )
@@ -32,7 +55,7 @@ ImplMapMode::ImplMapMode() :
mbSimple = false;
}
-ImplMapMode::ImplMapMode( const ImplMapMode& rImplMapMode ) :
+MapMode::ImplMapMode::ImplMapMode( const ImplMapMode& rImplMapMode ) :
maOrigin( rImplMapMode.maOrigin ),
maScaleX( rImplMapMode.maScaleX ),
maScaleY( rImplMapMode.maScaleY )
@@ -42,7 +65,7 @@ ImplMapMode::ImplMapMode( const ImplMapMode& rImplMapMode ) :
mbSimple = false;
}
-SvStream& ReadImplMapMode( SvStream& rIStm, ImplMapMode& rImplMapMode )
+SvStream& ReadImplMapMode(SvStream& rIStm, MapMode::ImplMapMode& rImplMapMode)
{
VersionCompat aCompat( rIStm, STREAM_READ );
sal_uInt16 nTmp16;
@@ -56,7 +79,7 @@ SvStream& ReadImplMapMode( SvStream& rIStm, ImplMapMode& rImplMapMode )
return rIStm;
}
-SvStream& WriteImplMapMode( SvStream& rOStm, const ImplMapMode& rImplMapMode )
+SvStream& WriteImplMapMode(SvStream& rOStm, const MapMode::ImplMapMode& rImplMapMode)
{
VersionCompat aCompat( rOStm, STREAM_WRITE, 1 );
@@ -69,7 +92,8 @@ SvStream& WriteImplMapMode( SvStream& rOStm, const ImplMapMode& rImplMapMode )
return rOStm;
}
-ImplMapMode* ImplMapMode::ImplGetStaticMapMode( MapUnit eUnit )
+MapMode::ImplMapMode *
+MapMode::ImplMapMode::ImplGetStaticMapMode(MapUnit eUnit)
{
static long aStaticImplMapModeAry[(MAP_LASTENUMDUMMY)*sizeof(ImplMapMode)/sizeof(long)];
@@ -243,4 +267,20 @@ SvStream& WriteMapMode( SvStream& rOStm, const MapMode& rMapMode )
return WriteImplMapMode( rOStm, *rMapMode.mpImplMapMode );
}
+
+MapUnit MapMode::GetMapUnit() const { return mpImplMapMode->meUnit; }
+
+const Point& MapMode::GetOrigin() const { return mpImplMapMode->maOrigin; }
+
+const Fraction& MapMode::GetScaleX() const { return mpImplMapMode->maScaleX; }
+
+const Fraction& MapMode::GetScaleY() const { return mpImplMapMode->maScaleY; }
+
+bool MapMode::IsSameInstance( const MapMode& rMapMode ) const
+{
+ return (mpImplMapMode == rMapMode.mpImplMapMode);
+}
+
+bool MapMode::IsSimple() const { return mpImplMapMode->mbSimple; }
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx
index 5f6246b9d246..7e49bc2e4779 100644
--- a/vcl/source/gdi/pdfwriter_impl.cxx
+++ b/vcl/source/gdi/pdfwriter_impl.cxx
@@ -44,6 +44,7 @@
#include <rtl/digest.h>
#include <rtl/ustrbuf.hxx>
#include <tools/debug.hxx>
+#include <tools/fract.hxx>
#include <tools/stream.hxx>
#include <tools/urlobj.hxx>
#include <tools/zcodec.hxx>
diff --git a/vcl/source/gdi/pdfwriter_impl2.cxx b/vcl/source/gdi/pdfwriter_impl2.cxx
index bcab2c459da0..02bfad35e478 100644
--- a/vcl/source/gdi/pdfwriter_impl2.cxx
+++ b/vcl/source/gdi/pdfwriter_impl2.cxx
@@ -30,6 +30,8 @@
#include "unotools/streamwrap.hxx"
+#include <tools/fract.hxx>
+
#include "comphelper/processfactory.hxx"
#include "com/sun/star/beans/PropertyValue.hpp"
diff --git a/vcl/source/gdi/textlayout.cxx b/vcl/source/gdi/textlayout.cxx
index 59e36687f046..f6a054518550 100644
--- a/vcl/source/gdi/textlayout.cxx
+++ b/vcl/source/gdi/textlayout.cxx
@@ -26,6 +26,7 @@
#include <com/sun/star/i18n/ScriptDirection.hpp>
#include <tools/diagnose_ex.h>
+#include <tools/fract.hxx>
#if OSL_DEBUG_LEVEL > 1
#include <rtl/strbuf.hxx>
diff --git a/vcl/source/outdev/map.cxx b/vcl/source/outdev/map.cxx
index b9bd53205862..b8bc6c5b05a1 100644
--- a/vcl/source/outdev/map.cxx
+++ b/vcl/source/outdev/map.cxx
@@ -1890,8 +1890,7 @@ Point OutputDevice::LogicToLogic( const Point& rPtSource,
MapUnit eUnitDest = rMapModeDest.GetMapUnit();
verifyUnitSourceDest( eUnitSource, eUnitDest );
- if ( rMapModeSource.mpImplMapMode->mbSimple &&
- rMapModeDest.mpImplMapMode->mbSimple )
+ if (rMapModeSource.IsSimple() && rMapModeDest.IsSimple())
{
ENTER3( eUnitSource, eUnitDest );
@@ -1924,8 +1923,7 @@ Size OutputDevice::LogicToLogic( const Size& rSzSource,
MapUnit eUnitDest = rMapModeDest.GetMapUnit();
verifyUnitSourceDest( eUnitSource, eUnitDest );
- if ( rMapModeSource.mpImplMapMode->mbSimple &&
- rMapModeDest.mpImplMapMode->mbSimple )
+ if (rMapModeSource.IsSimple() && rMapModeDest.IsSimple())
{
ENTER3( eUnitSource, eUnitDest );
@@ -1990,7 +1988,7 @@ basegfx::B2DHomMatrix OutputDevice::LogicToLogic(const MapMode& rMapModeSource,
MapUnit eUnitDest = rMapModeDest.GetMapUnit();
verifyUnitSourceDest(eUnitSource, eUnitDest);
- if(rMapModeSource.mpImplMapMode->mbSimple && rMapModeDest.mpImplMapMode->mbSimple)
+ if (rMapModeSource.IsSimple() && rMapModeDest.IsSimple())
{
ENTER3(eUnitSource, eUnitDest);
@@ -2027,8 +2025,7 @@ Rectangle OutputDevice::LogicToLogic( const Rectangle& rRectSource,
MapUnit eUnitDest = rMapModeDest.GetMapUnit();
verifyUnitSourceDest( eUnitSource, eUnitDest );
- if ( rMapModeSource.mpImplMapMode->mbSimple &&
- rMapModeDest.mpImplMapMode->mbSimple )
+ if (rMapModeSource.IsSimple() && rMapModeDest.IsSimple())
{
ENTER3( eUnitSource, eUnitDest );