|
 |
135360 |
From 9b45ae57735ee9f7a64ceb7cac8b23e322a63bfc Mon Sep 17 00:00:00 2001
|
|
 |
135360 |
From: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
 |
135360 |
Date: Fri, 25 Sep 2015 01:06:31 +0200
|
|
 |
135360 |
Subject: [PATCH 158/398] desktop: make LibLibreOffice_Impl visible to
|
|
 |
135360 |
testcases
|
|
 |
135360 |
|
|
 |
135360 |
(cherry picked from commit 14a9a7d52074104afa24278a7a350f05d6df572a)
|
|
 |
135360 |
|
|
 |
135360 |
Change-Id: I345a6cab57cc594614e348700bb3c1c9a0673989
|
|
 |
135360 |
---
|
|
 |
135360 |
desktop/inc/lib/init.hxx | 12 +++++++++++
|
|
 |
135360 |
desktop/source/lib/init.cxx | 51 +++++++++++++++++----------------------------
|
|
 |
135360 |
2 files changed, 31 insertions(+), 32 deletions(-)
|
|
 |
135360 |
|
|
 |
135360 |
diff --git a/desktop/inc/lib/init.hxx b/desktop/inc/lib/init.hxx
|
|
 |
135360 |
index b17f82566daf..81e7eb61664e 100644
|
|
 |
135360 |
--- a/desktop/inc/lib/init.hxx
|
|
 |
135360 |
+++ b/desktop/inc/lib/init.hxx
|
|
 |
135360 |
@@ -11,6 +11,7 @@
|
|
 |
135360 |
#include <com/sun/star/lang/XComponent.hpp>
|
|
 |
135360 |
#include <boost/shared_ptr.hpp>
|
|
 |
135360 |
#include "../../source/inc/desktopdllapi.h"
|
|
 |
135360 |
+#include <osl/thread.h>
|
|
 |
135360 |
|
|
 |
135360 |
using namespace css;
|
|
 |
135360 |
using namespace boost;
|
|
 |
135360 |
@@ -24,4 +25,15 @@ namespace desktop {
|
|
 |
135360 |
explicit LibLODocument_Impl(const uno::Reference <css::lang::XComponent> &xComponent);
|
|
 |
135360 |
~LibLODocument_Impl();
|
|
 |
135360 |
};
|
|
 |
135360 |
+
|
|
 |
135360 |
+ struct DESKTOP_DLLPUBLIC LibLibreOffice_Impl : public _LibreOfficeKit
|
|
 |
135360 |
+ {
|
|
 |
135360 |
+ OUString maLastExceptionMsg;
|
|
 |
135360 |
+ std::shared_ptr< LibreOfficeKitClass > m_pOfficeClass;
|
|
 |
135360 |
+ oslThread maThread;
|
|
 |
135360 |
+ LibreOfficeKitCallback mpCallback;
|
|
 |
135360 |
+ void *mpCallbackData;
|
|
 |
135360 |
+
|
|
 |
135360 |
+ LibLibreOffice_Impl();
|
|
 |
135360 |
+ };
|
|
 |
135360 |
}
|
|
 |
135360 |
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
|
|
 |
135360 |
index 57697fabce4c..8e4c0f3ab4e5 100644
|
|
 |
135360 |
--- a/desktop/source/lib/init.cxx
|
|
 |
135360 |
+++ b/desktop/source/lib/init.cxx
|
|
 |
135360 |
@@ -86,10 +86,6 @@ using namespace vcl;
|
|
 |
135360 |
using namespace desktop;
|
|
 |
135360 |
using namespace utl;
|
|
 |
135360 |
|
|
 |
135360 |
-using namespace boost;
|
|
 |
135360 |
-
|
|
 |
135360 |
-struct LibLibreOffice_Impl;
|
|
 |
135360 |
-
|
|
 |
135360 |
static LibLibreOffice_Impl *gImpl = NULL;
|
|
 |
135360 |
static weak_ptr< LibreOfficeKitClass > gOfficeClass;
|
|
 |
135360 |
static weak_ptr< LibreOfficeKitDocumentClass > gDocumentClass;
|
|
 |
135360 |
@@ -322,36 +318,27 @@ static void lo_registerCallback (LibreOfficeKit* pThis,
|
|
 |
135360 |
void* pData);
|
|
 |
135360 |
static char* lo_getFilterTypes(LibreOfficeKit* pThis);
|
|
 |
135360 |
|
|
 |
135360 |
-struct LibLibreOffice_Impl : public _LibreOfficeKit
|
|
 |
135360 |
+LibLibreOffice_Impl::LibLibreOffice_Impl()
|
|
 |
135360 |
+ : maThread(0)
|
|
 |
135360 |
+ , mpCallback(nullptr)
|
|
 |
135360 |
+ , mpCallbackData(nullptr)
|
|
 |
135360 |
{
|
|
 |
135360 |
- OUString maLastExceptionMsg;
|
|
 |
135360 |
- shared_ptr< LibreOfficeKitClass > m_pOfficeClass;
|
|
 |
135360 |
- oslThread maThread;
|
|
 |
135360 |
- LibreOfficeKitCallback mpCallback;
|
|
 |
135360 |
- void *mpCallbackData;
|
|
 |
135360 |
-
|
|
 |
135360 |
- LibLibreOffice_Impl()
|
|
 |
135360 |
- : maThread(0)
|
|
 |
135360 |
- , mpCallback(nullptr)
|
|
 |
135360 |
- , mpCallbackData(nullptr)
|
|
 |
135360 |
- {
|
|
 |
135360 |
- if(!(m_pOfficeClass = gOfficeClass.lock())) {
|
|
 |
135360 |
- m_pOfficeClass.reset(new LibreOfficeKitClass);
|
|
 |
135360 |
- m_pOfficeClass->nSize = sizeof(LibreOfficeKitClass);
|
|
 |
135360 |
-
|
|
 |
135360 |
- m_pOfficeClass->destroy = lo_destroy;
|
|
 |
135360 |
- m_pOfficeClass->documentLoad = lo_documentLoad;
|
|
 |
135360 |
- m_pOfficeClass->getError = lo_getError;
|
|
 |
135360 |
- m_pOfficeClass->documentLoadWithOptions = lo_documentLoadWithOptions;
|
|
 |
135360 |
- m_pOfficeClass->registerCallback = lo_registerCallback;
|
|
 |
135360 |
- m_pOfficeClass->getFilterTypes = lo_getFilterTypes;
|
|
 |
135360 |
-
|
|
 |
135360 |
- gOfficeClass = m_pOfficeClass;
|
|
 |
135360 |
- }
|
|
 |
135360 |
-
|
|
 |
135360 |
- pClass = m_pOfficeClass.get();
|
|
 |
135360 |
+ if(!(m_pOfficeClass = gOfficeClass.lock())) {
|
|
 |
135360 |
+ m_pOfficeClass.reset(new LibreOfficeKitClass);
|
|
 |
135360 |
+ m_pOfficeClass->nSize = sizeof(LibreOfficeKitClass);
|
|
 |
135360 |
+
|
|
 |
135360 |
+ m_pOfficeClass->destroy = lo_destroy;
|
|
 |
135360 |
+ m_pOfficeClass->documentLoad = lo_documentLoad;
|
|
 |
135360 |
+ m_pOfficeClass->getError = lo_getError;
|
|
 |
135360 |
+ m_pOfficeClass->documentLoadWithOptions = lo_documentLoadWithOptions;
|
|
 |
135360 |
+ m_pOfficeClass->registerCallback = lo_registerCallback;
|
|
 |
135360 |
+ m_pOfficeClass->getFilterTypes = lo_getFilterTypes;
|
|
 |
135360 |
+
|
|
 |
135360 |
+ gOfficeClass = m_pOfficeClass;
|
|
 |
135360 |
}
|
|
 |
135360 |
-};
|
|
 |
135360 |
+
|
|
 |
135360 |
+ pClass = m_pOfficeClass.get();
|
|
 |
135360 |
+}
|
|
 |
135360 |
|
|
 |
135360 |
namespace
|
|
 |
135360 |
{
|
|
 |
135360 |
--
|
|
 |
135360 |
2.12.0
|
|
 |
135360 |
|