diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-01-06 15:49:12 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-01-06 20:55:24 +0100 |
commit | aa827f5fde5a95343bb5fa819eda7a10f57e9d36 (patch) | |
tree | 7dbad42371677e7a67660d2a3c1a20742872932f /desktop | |
parent | 0137974abd70d80589ae1a4853523ec2039be1ff (diff) |
lok::Document: add registerCallback()
So that LOK clients can invoke the new
vcl::ITiledRenderable::registerCallback().
Change-Id: I6d9974acbd7fb5eea217c88f963e6ebb10343078
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/lib/init.cxx | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 8a8538e77c3b..08a353fbd2d5 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -199,6 +199,9 @@ static void doc_getDocumentSize(LibreOfficeKitDocument* pThis, long* pHeight); static void doc_initializeForRendering(LibreOfficeKitDocument* pThis); +static void doc_registerCallback(LibreOfficeKitDocument* pThis, + LibreOfficeKitCallback pCallback, + void* pData); struct LibLODocument_Impl : public _LibreOfficeKitDocument { @@ -225,6 +228,7 @@ struct LibLODocument_Impl : public _LibreOfficeKitDocument m_pDocumentClass->paintTile = doc_paintTile; m_pDocumentClass->getDocumentSize = doc_getDocumentSize; m_pDocumentClass->initializeForRendering = doc_initializeForRendering; + m_pDocumentClass->registerCallback = doc_registerCallback; gDocumentClass = m_pDocumentClass; } @@ -620,6 +624,20 @@ static void doc_initializeForRendering(LibreOfficeKitDocument* pThis) } } +static void doc_registerCallback(LibreOfficeKitDocument* pThis, + LibreOfficeKitCallback pCallback, + void* pData) +{ + ITiledRenderable* pDoc = getTiledRenderable(pThis); + if (!pDoc) + { + gImpl->maLastExceptionMsg = "Document doesn't support tiled rendering"; + return; + } + + pDoc->registerCallback(pCallback, pData); +} + static char* lo_getError (LibreOfficeKit *pThis) { LibLibreOffice_Impl* pLib = static_cast<LibLibreOffice_Impl*>(pThis); |