diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-11-13 15:11:50 +0000 |
---|---|---|
committer | Jan Holesovsky <kendy@collabora.com> | 2016-05-16 14:56:58 +0200 |
commit | 9d0efc3a19d896363f55652e11331c5bc956c1da (patch) | |
tree | 5ed2b491054fcbe27539eab662e8e9cca6614e38 | |
parent | 5708d0e3dab3f3fc8d4d323e80a144360b7123a3 (diff) |
use cairo-compatible top-down direction virtual devices everywhere
that way we can use cairo to text render etc onto our basebmp-backed
headless/gtk3 virtual devices
Change-Id: I91002b610b72a4fe1d2094a57c5cb1b6b5d69cb1
Reviewed-on: https://gerrit.libreoffice.org/19957
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r-- | desktop/source/lib/init.cxx | 4 | ||||
-rw-r--r-- | include/vcl/virdev.hxx | 10 | ||||
-rw-r--r-- | sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 2 | ||||
-rw-r--r-- | vcl/source/gdi/virdev.cxx | 19 |
4 files changed, 15 insertions, 20 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 4781cd7a3a13..9241051ba2ee 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -1016,7 +1016,7 @@ void doc_paintTile(LibreOfficeKitDocument* pThis, pDevice->SetOutputSizePixelScaleOffsetAndBuffer( Size(nCanvasWidth, nCanvasHeight), Fraction(1.0), Point(), - aBuffer, aAlphaBuffer, true); + aBuffer, aAlphaBuffer); pDoc->paintTile(*pDevice.get(), nCanvasWidth, nCanvasHeight, nTilePosX, nTilePosY, nTileWidth, nTileHeight); @@ -1043,7 +1043,7 @@ void doc_paintTile(LibreOfficeKitDocument* pThis, pDevice->SetOutputSizePixelScaleOffsetAndBuffer( Size(nCanvasWidth, nCanvasHeight), Fraction(1.0), Point(), - aBuffer, aAlphaBuffer, true ); + aBuffer, aAlphaBuffer); pDoc->paintTile(*pDevice.get(), nCanvasWidth, nCanvasHeight, nTilePosX, nTilePosY, nTileWidth, nTileHeight); diff --git a/include/vcl/virdev.hxx b/include/vcl/virdev.hxx index 1a58097c5bf0..8429339a919e 100644 --- a/include/vcl/virdev.hxx +++ b/include/vcl/virdev.hxx @@ -46,12 +46,10 @@ private: SAL_DLLPRIVATE void ImplInitVirDev( const OutputDevice* pOutDev, long nDX, long nDY, DeviceFormat eFormat, const SystemGraphicsData *pData = nullptr ); SAL_DLLPRIVATE bool InnerImplSetOutputSizePixel( const Size& rNewSize, bool bErase, - const basebmp::RawMemorySharedArray &pBuffer, - const bool bTopDown ); + const basebmp::RawMemorySharedArray &pBuffer ); SAL_DLLPRIVATE bool ImplSetOutputSizePixel( const Size& rNewSize, bool bErase, const basebmp::RawMemorySharedArray &pBuffer, - const basebmp::RawMemorySharedArray &pAlphaBuffer, - const bool bTopDown ); + const basebmp::RawMemorySharedArray &pAlphaBuffer ); VirtualDevice (const VirtualDevice &) SAL_DELETED_FUNCTION; VirtualDevice & operator= (const VirtualDevice &) SAL_DELETED_FUNCTION; @@ -130,8 +128,8 @@ public: const Fraction& rScale, const Point& rNewOffset, const basebmp::RawMemorySharedArray &pBuffer, - const basebmp::RawMemorySharedArray &pAlphaBuffer, - const bool bTopDown = false ); + const basebmp::RawMemorySharedArray &pAlphaBuffer ); + bool SetOutputSize( const Size& rNewSize, bool bErase = true ) { return SetOutputSizePixel( LogicToPixel( rNewSize ), bErase ); } diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx index 4a362c3f2e8d..c6f372aef22f 100644 --- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx +++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx @@ -774,7 +774,7 @@ DECLARE_OOXMLIMPORT_TEST(testN777345, "n777345.docx") Graphic aGraphic(xGraphic); // If this changes later, feel free to update it, but make sure it's not // the checksum of a white/transparent placeholder rectangle. - CPPUNIT_ASSERT_EQUAL(BitmapChecksum(3652741777587093783), aGraphic.GetChecksum()); + CPPUNIT_ASSERT_EQUAL(BitmapChecksum(SAL_CONST_UINT64(16427281842367305761)), aGraphic.GetChecksum()); #endif } diff --git a/vcl/source/gdi/virdev.cxx b/vcl/source/gdi/virdev.cxx index 81c59ddb762f..2eaf7b77df3b 100644 --- a/vcl/source/gdi/virdev.cxx +++ b/vcl/source/gdi/virdev.cxx @@ -289,8 +289,7 @@ void VirtualDevice::dispose() } bool VirtualDevice::InnerImplSetOutputSizePixel( const Size& rNewSize, bool bErase, - const basebmp::RawMemorySharedArray &pBuffer, - const bool bTopDown ) + const basebmp::RawMemorySharedArray &pBuffer ) { SAL_INFO( "vcl.gdi", "VirtualDevice::InnerImplSetOutputSizePixel( " << rNewSize.Width() << ", " @@ -319,7 +318,7 @@ bool VirtualDevice::InnerImplSetOutputSizePixel( const Size& rNewSize, bool bEra if ( bErase ) { if ( pBuffer ) - bRet = mpVirDev->SetSizeUsingBuffer( nNewWidth, nNewHeight, pBuffer, bTopDown ); + bRet = mpVirDev->SetSizeUsingBuffer( nNewWidth, nNewHeight, pBuffer ); else bRet = mpVirDev->SetSize( nNewWidth, nNewHeight ); @@ -397,10 +396,9 @@ void VirtualDevice::ImplFillOpaqueRectangle( const Rectangle& rRect ) bool VirtualDevice::ImplSetOutputSizePixel( const Size& rNewSize, bool bErase, const basebmp::RawMemorySharedArray &pBuffer, - const basebmp::RawMemorySharedArray &pAlphaBuffer, - const bool bTopDown ) + const basebmp::RawMemorySharedArray &pAlphaBuffer ) { - if( InnerImplSetOutputSizePixel(rNewSize, bErase, pBuffer, bTopDown) ) + if( InnerImplSetOutputSizePixel(rNewSize, bErase, pBuffer) ) { if (meAlphaFormat != DeviceFormat::NONE) { @@ -414,8 +412,7 @@ bool VirtualDevice::ImplSetOutputSizePixel( const Size& rNewSize, bool bErase, { mpAlphaVDev = VclPtr<VirtualDevice>::Create(*this, meAlphaFormat); mpAlphaVDev->InnerImplSetOutputSizePixel(rNewSize, bErase, - pAlphaBuffer, - bTopDown ); + pAlphaBuffer); } // TODO: copy full outdev state to new one, here. Also needed in outdev2.cxx:DrawOutDev @@ -448,12 +445,12 @@ void VirtualDevice::EnableRTL( bool bEnable ) bool VirtualDevice::SetOutputSizePixel( const Size& rNewSize, bool bErase ) { - return ImplSetOutputSizePixel( rNewSize, bErase, basebmp::RawMemorySharedArray(), basebmp::RawMemorySharedArray(), false ); + return ImplSetOutputSizePixel( rNewSize, bErase, basebmp::RawMemorySharedArray(), basebmp::RawMemorySharedArray()); } bool VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer( const Size& rNewSize, const Fraction& rScale, const Point& rNewOffset, - const basebmp::RawMemorySharedArray &pBuffer, const basebmp::RawMemorySharedArray &pAlphaBuffer, const bool bTopDown ) + const basebmp::RawMemorySharedArray &pBuffer, const basebmp::RawMemorySharedArray &pAlphaBuffer ) { if (pAlphaBuffer) meAlphaFormat = DeviceFormat::GRAYSCALE; @@ -465,7 +462,7 @@ bool VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer( mm.SetScaleY( rScale ); SetMapMode( mm ); } - return ImplSetOutputSizePixel( rNewSize, true, pBuffer, pAlphaBuffer, bTopDown ); + return ImplSetOutputSizePixel( rNewSize, true, pBuffer, pAlphaBuffer ); } void VirtualDevice::SetReferenceDevice( RefDevMode i_eRefDevMode ) |