Kaydet (Commit) 3f70d2d2 authored tarafından Miklos Vajna's avatar Miklos Vajna

desktop: make LibLibreOffice_Impl visible to testcases

(cherry picked from commit 14a9a7d5)

Conflicts:
	desktop/source/lib/init.cxx

Change-Id: I345a6cab57cc594614e348700bb3c1c9a0673989
üst 2c049ea3
......@@ -11,6 +11,7 @@
#include <com/sun/star/lang/XComponent.hpp>
#include <boost/shared_ptr.hpp>
#include "../../source/inc/desktopdllapi.h"
#include <osl/thread.h>
using namespace css;
using namespace boost;
......@@ -24,4 +25,15 @@ namespace desktop {
explicit LibLODocument_Impl(const uno::Reference <css::lang::XComponent> &xComponent);
~LibLODocument_Impl();
};
struct DESKTOP_DLLPUBLIC LibLibreOffice_Impl : public _LibreOfficeKit
{
OUString maLastExceptionMsg;
boost::shared_ptr< LibreOfficeKitClass > m_pOfficeClass;
oslThread maThread;
LibreOfficeKitCallback mpCallback;
void *mpCallbackData;
LibLibreOffice_Impl();
};
}
......@@ -88,8 +88,6 @@ using namespace utl;
using namespace boost;
struct LibLibreOffice_Impl;
static LibLibreOffice_Impl *gImpl = NULL;
static weak_ptr< LibreOfficeKitClass > gOfficeClass;
static weak_ptr< LibreOfficeKitDocumentClass > gDocumentClass;
......@@ -322,36 +320,27 @@ static void lo_registerCallback (LibreOfficeKit* pThis,
void* pData);
static char* lo_getFilterTypes(LibreOfficeKit* pThis);
struct LibLibreOffice_Impl : public _LibreOfficeKit
LibLibreOffice_Impl::LibLibreOffice_Impl()
: maThread(0)
, mpCallback(nullptr)
, mpCallbackData(nullptr)
{
OUString maLastExceptionMsg;
shared_ptr< LibreOfficeKitClass > m_pOfficeClass;
oslThread maThread;
LibreOfficeKitCallback mpCallback;
void *mpCallbackData;
LibLibreOffice_Impl()
: maThread(0)
, mpCallback(nullptr)
, mpCallbackData(nullptr)
{
if(!(m_pOfficeClass = gOfficeClass.lock())) {
m_pOfficeClass.reset(new LibreOfficeKitClass);
m_pOfficeClass->nSize = sizeof(LibreOfficeKitClass);
m_pOfficeClass->destroy = lo_destroy;
m_pOfficeClass->documentLoad = lo_documentLoad;
m_pOfficeClass->getError = lo_getError;
m_pOfficeClass->documentLoadWithOptions = lo_documentLoadWithOptions;
m_pOfficeClass->registerCallback = lo_registerCallback;
m_pOfficeClass->getFilterTypes = lo_getFilterTypes;
gOfficeClass = m_pOfficeClass;
}
pClass = m_pOfficeClass.get();
if(!(m_pOfficeClass = gOfficeClass.lock())) {
m_pOfficeClass.reset(new LibreOfficeKitClass);
m_pOfficeClass->nSize = sizeof(LibreOfficeKitClass);
m_pOfficeClass->destroy = lo_destroy;
m_pOfficeClass->documentLoad = lo_documentLoad;
m_pOfficeClass->getError = lo_getError;
m_pOfficeClass->documentLoadWithOptions = lo_documentLoadWithOptions;
m_pOfficeClass->registerCallback = lo_registerCallback;
m_pOfficeClass->getFilterTypes = lo_getFilterTypes;
gOfficeClass = m_pOfficeClass;
}
};
pClass = m_pOfficeClass.get();
}
namespace
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment