diff options
author | Andrzej Hunt <andrzej.hunt@collabora.com> | 2014-06-13 17:31:42 +0100 |
---|---|---|
committer | Andrzej Hunt <andrzej.hunt@collabora.com> | 2014-06-25 13:04:32 +0100 |
commit | f35b010a95ad877988bb5eaa4f689644b00f702c (patch) | |
tree | 0173db39686b8ef5d1749b1dede4d7f471422256 /sw | |
parent | 837631c6cfa189280f9e723481f2251de56a1d92 (diff) |
Add ITiledRenderable.
We want to have a simple interface that allows access to tiled
rendering without digging into the internals of writer
(and in the future calc/impress/draw).
Change-Id: Ia9c278a48c919333186e5361ff25bb1ab603b846
Diffstat (limited to 'sw')
-rw-r--r-- | sw/inc/unotxdoc.hxx | 14 | ||||
-rw-r--r-- | sw/source/uibase/uno/unotxdoc.cxx | 18 |
2 files changed, 31 insertions, 1 deletions
diff --git a/sw/inc/unotxdoc.hxx b/sw/inc/unotxdoc.hxx index e43ea2be83aa..a48a8f34bab5 100644 --- a/sw/inc/unotxdoc.hxx +++ b/sw/inc/unotxdoc.hxx @@ -67,6 +67,7 @@ #include <cppuhelper/weak.hxx> #include <cppuhelper/implbase2.hxx> #include <cppuhelper/implbase4.hxx> +#include <vcl/ITiledRenderable.hxx> #include <unobaseclass.hxx> #include <viewopt.hxx> @@ -161,7 +162,8 @@ SwXTextDocumentBaseClass; class SW_DLLPUBLIC SwXTextDocument : public SwXTextDocumentBaseClass, public SvxFmMSFactory, - public SfxBaseModel + public SfxBaseModel, + public ::vcl::ITiledRenderable { private: class Impl; @@ -428,6 +430,16 @@ public: // ::com::sun::star::util::XCloneable virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; + // ITiledRenderable + virtual void paintTile( VirtualDevice &rDevice, + int nOutputWidth, + int nOutputHeight, + int nTilePosX, + int nTilePosY, + long nTileWidth, + long nTileHeight ) SAL_OVERRIDE; + virtual Size getDocumentSize() SAL_OVERRIDE; + void Invalidate(); void Reactivate(SwDocShell* pNewDocShell); SwXDocumentPropertyHelper * GetPropertyHelper (); diff --git a/sw/source/uibase/uno/unotxdoc.cxx b/sw/source/uibase/uno/unotxdoc.cxx index 1ce5469bd189..b61eb77d98f1 100644 --- a/sw/source/uibase/uno/unotxdoc.cxx +++ b/sw/source/uibase/uno/unotxdoc.cxx @@ -3119,6 +3119,24 @@ uno::Reference< util::XCloneable > SwXTextDocument::createClone( ) throw (uno:: return uno::Reference< util::XCloneable >( xNewModel, UNO_QUERY ); } +void SwXTextDocument::paintTile( VirtualDevice &rDevice, + int nOutputWidth, int nOutputHeight, + int nTilePosX, int nTilePosY, + long nTileWidth, long nTileHeight ) +{ + SwDoc* pDoc = pDocShell->GetDoc(); + SwViewShell* pViewShell = pDoc->GetCurrentViewShell(); + pViewShell->PaintTile(rDevice, nOutputWidth, nOutputHeight, + nTilePosX, nTilePosY, nTileWidth, nTileHeight); +} + +Size SwXTextDocument::getDocumentSize() +{ + SwDoc* pDoc = pDocShell->GetDoc(); + SwViewShell* pViewShell = pDoc->GetCurrentViewShell(); + return pViewShell->GetDocSize(); +} + void * SAL_CALL SwXTextDocument::operator new( size_t t) throw() { return SwXTextDocumentBaseClass::operator new(t); |