summaryrefslogtreecommitdiff
path: root/embedserv/source/inc
diff options
context:
space:
mode:
Diffstat (limited to 'embedserv/source/inc')
-rwxr-xr-xembedserv/source/inc/common.h44
-rw-r--r--embedserv/source/inc/docholder.hxx3
-rwxr-xr-xembedserv/source/inc/embeddoc.hxx13
-rw-r--r--embedserv/source/inc/embeddocaccess.hxx28
-rw-r--r--embedserv/source/inc/embservconst.h89
5 files changed, 129 insertions, 48 deletions
diff --git a/embedserv/source/inc/common.h b/embedserv/source/inc/common.h
index d7e94dc5d04b..a2d5707b8e3f 100755
--- a/embedserv/source/inc/common.h
+++ b/embedserv/source/inc/common.h
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: common.h,v $
- * $Revision: 1.6 $
+ * $Revision: 1.6.10.1 $
*
* This file is part of OpenOffice.org.
*
@@ -33,10 +33,13 @@
#include "stdafx.h"
#include <initguid.h>
+
#include <rtl/ustring.hxx>
#include <osl/interlck.h>
#include <comphelper/classids.hxx>
+#include "embservconst.h"
+
namespace com { namespace sun { namespace star {
namespace lang {
class XMultiServiceFactory;
@@ -53,43 +56,4 @@ namespace com { namespace sun { namespace star {
}
} } }
-const sal_Int32 nConstBufferSize = 32000;
-
-#define SUPPORTED_FACTORIES_NUM 10
-
-#ifdef __MINGW32__
-#define DECLSPEC_SELECTANY
-#endif
-#if defined(__MINGW32__) && !defined(INITGUID)
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterTextServer;
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterOASISTextServer;
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcServer;
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcOASISServer;
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingServer;
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingOASISServer;
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationServer;
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationOASISServer;
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathServer;
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathOASISServer;
-#else
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterTextServer = { SO3_SW_OLE_EMBED_CLASSID_60 };
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterOASISTextServer = { SO3_SW_OLE_EMBED_CLASSID_8 };
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcServer = { SO3_SC_OLE_EMBED_CLASSID_60 };
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcOASISServer = { SO3_SC_OLE_EMBED_CLASSID_8 };
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingServer = { SO3_SDRAW_OLE_EMBED_CLASSID_60 };
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingOASISServer = { SO3_SDRAW_OLE_EMBED_CLASSID_8 };
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationServer = { SO3_SIMPRESS_OLE_EMBED_CLASSID_60 };
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationOASISServer = { SO3_SIMPRESS_OLE_EMBED_CLASSID_8 };
-
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathServer = { SO3_SM_OLE_EMBED_CLASSID_60 };
-EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathOASISServer = { SO3_SM_OLE_EMBED_CLASSID_8 };
-#endif
-
#endif
diff --git a/embedserv/source/inc/docholder.hxx b/embedserv/source/inc/docholder.hxx
index cdc16d89b6cb..e2c627ecc844 100644
--- a/embedserv/source/inc/docholder.hxx
+++ b/embedserv/source/inc/docholder.hxx
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: docholder.hxx,v $
- * $Revision: 1.21 $
+ * $Revision: 1.21.10.1 $
*
* This file is part of OpenOffice.org.
*
@@ -184,6 +184,7 @@ public:
void OnPosRectChanged(LPRECT lpRect) const;
void show();
+ sal_Bool HasFrame() { return m_xFrame.is(); }
/** hides the document window, even in case of an external container
* side managed window.
diff --git a/embedserv/source/inc/embeddoc.hxx b/embedserv/source/inc/embeddoc.hxx
index 36aba78f7700..b6998aef8e1e 100755
--- a/embedserv/source/inc/embeddoc.hxx
+++ b/embedserv/source/inc/embeddoc.hxx
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: embeddoc.hxx,v $
- * $Revision: 1.18 $
+ * $Revision: 1.18.10.1 $
*
* This file is part of OpenOffice.org.
*
@@ -39,6 +39,7 @@
#include "common.h"
#include <oleidl.h>
+#include <objidl.h>
#include <hash_map>
#include <com/sun/star/uno/Reference.h>
@@ -61,7 +62,8 @@ class EmbedDocument_Impl
public IOleObject,
public IOleInPlaceObject,
public IPersistFile,
- public IDispatch
+ public IDispatch,
+ public IExternalConnection
{
protected:
::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >
@@ -150,6 +152,10 @@ public:
STDMETHOD(GetIDsOfNames) ( REFIID riid, OLECHAR FAR* FAR* rgszNames, unsigned int cNames, LCID lcid, DISPID FAR* rgDispId );
STDMETHOD(Invoke) ( DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS FAR* pDispParams, VARIANT FAR* pVarResult, EXCEPINFO FAR* pExcepInfo, unsigned int FAR* puArgErr );
+ /* IExternalConnection methods */
+ virtual DWORD STDMETHODCALLTYPE AddConnection( DWORD extconn, DWORD reserved);
+ virtual DWORD STDMETHODCALLTYPE ReleaseConnection( DWORD extconn, DWORD reserved, BOOL fLastReleaseCloses);
+
// c++ - methods
void notify( bool bDataChanged = true );
@@ -158,6 +164,9 @@ public:
GUID GetGUID() const { return m_guid; }
HRESULT OLENotifyClosing();
+ void Deactivate();
+ HRESULT OLENotifyDeactivation();
+
protected:
oslInterlockedCount m_refCount;
diff --git a/embedserv/source/inc/embeddocaccess.hxx b/embedserv/source/inc/embeddocaccess.hxx
index 821d1de5c1e3..7794af29b585 100644
--- a/embedserv/source/inc/embeddocaccess.hxx
+++ b/embedserv/source/inc/embeddocaccess.hxx
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: embeddocaccess.hxx,v $
- * $Revision: 1.5 $
+ * $Revision: 1.5.10.1 $
*
* This file is part of OpenOffice.org.
*
@@ -31,9 +31,14 @@
#ifndef _EMBEDDOCACCESS_HXX_
#define _EMBEDDOCACCESS_HXX_
-#if defined(_MSC_VER) && (_MSC_VER >= 1300)
-#undef _DEBUG
-#endif
+#include <cppuhelper/weak.hxx>
+
+#define OLESERV_SAVEOBJECT 1
+#define OLESERV_CLOSE 2
+#define OLESERV_NOTIFY 3
+#define OLESERV_NOTIFYCLOSING 4
+#define OLESERV_SHOWOBJECT 5
+#define OLESERV_DEACTIVATE 6
#include <oleidl.h>
#ifndef __MINGW32__
@@ -49,8 +54,21 @@
class EmbedDocument_Impl;
struct LockedEmbedDocument_Impl
{
+private:
EmbedDocument_Impl* m_pEmbedDocument;
- CComPtr< IPersistStorage > m_pLocker;
+
+public:
+ LockedEmbedDocument_Impl();
+ LockedEmbedDocument_Impl( EmbedDocument_Impl* pEmbedDocument );
+ LockedEmbedDocument_Impl( const LockedEmbedDocument_Impl& aDocLock );
+
+ ~LockedEmbedDocument_Impl();
+
+ LockedEmbedDocument_Impl& operator=( const LockedEmbedDocument_Impl& aDocLock );
+
+ EmbedDocument_Impl* GetEmbedDocument() { return m_pEmbedDocument; }
+
+ void ExecuteMethod( sal_Int16 nId );
};
class EmbeddedDocumentInstanceAccess_Impl : public ::cppu::OWeakObject
diff --git a/embedserv/source/inc/embservconst.h b/embedserv/source/inc/embservconst.h
new file mode 100644
index 000000000000..3328e31e318f
--- /dev/null
+++ b/embedserv/source/inc/embservconst.h
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: embservconst.h,v $
+ *
+ * $Revision: 1.1.8.2 $
+ *
+ * last change: $Author: mav $ $Date: 2008/10/30 11:59:06 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#ifndef _EMBSERVCONST_H_
+#define _EMBSERVCONST_H_
+
+#include <initguid.h>
+
+#ifndef _COMPHELPER_CLASSIDS_HXX
+#include <comphelper/classids.hxx>
+#endif
+
+#ifndef _SAL_TYPES_H_
+#include <sal/types.h>
+#endif
+
+const sal_Int32 nConstBufferSize = 32000;
+
+#define SUPPORTED_FACTORIES_NUM 10
+
+#ifdef __MINGW32__
+#define DECLSPEC_SELECTANY
+#endif
+#if defined(__MINGW32__) && !defined(INITGUID)
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterTextServer;
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterOASISTextServer;
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcServer;
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcOASISServer;
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingServer;
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingOASISServer;
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationServer;
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationOASISServer;
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathServer;
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathOASISServer;
+#else
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterTextServer = { SO3_SW_OLE_EMBED_CLASSID_60 };
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_WriterOASISTextServer = { SO3_SW_OLE_EMBED_CLASSID_8 };
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcServer = { SO3_SC_OLE_EMBED_CLASSID_60 };
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_CalcOASISServer = { SO3_SC_OLE_EMBED_CLASSID_8 };
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingServer = { SO3_SDRAW_OLE_EMBED_CLASSID_60 };
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_DrawingOASISServer = { SO3_SDRAW_OLE_EMBED_CLASSID_8 };
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationServer = { SO3_SIMPRESS_OLE_EMBED_CLASSID_60 };
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_PresentationOASISServer = { SO3_SIMPRESS_OLE_EMBED_CLASSID_8 };
+
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathServer = { SO3_SM_OLE_EMBED_CLASSID_60 };
+EXTERN_C const GUID DECLSPEC_SELECTANY OID_MathOASISServer = { SO3_SM_OLE_EMBED_CLASSID_8 };
+#endif
+
+#endif
+