summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMichael Stahl <mst@openoffice.org>2010-01-05 16:37:43 +0100
committerMichael Stahl <mst@openoffice.org>2010-01-05 16:37:43 +0100
commita36e10b3749788ccfb5c79827f53af04301866e1 (patch)
tree74b4b9400f89f37ce0678fc0f7bb1643a8b31309 /sw
parent37dee57c4d5640e59c296c926a74a25342afdc2e (diff)
swunolocking1: #i105557#: unoobj.hxx: split out unobookmark.hxx:
move SwXBookmark, SwXFieldmark from unoobj.hxx to new unobookmark.hxx.
Diffstat (limited to 'sw')
-rw-r--r--sw/inc/unobookmark.hxx248
-rw-r--r--sw/inc/unoobj.hxx113
-rw-r--r--sw/source/core/crsr/bookmrk.cxx2
-rw-r--r--sw/source/core/unocore/unobkm.cxx18
-rw-r--r--sw/source/core/unocore/unocoll.cxx1
-rw-r--r--sw/source/core/unocore/unoportenum.cxx1
-rw-r--r--sw/source/core/unocore/unotext.cxx1
-rw-r--r--sw/source/ui/uno/unotxvw.cxx1
8 files changed, 270 insertions, 115 deletions
diff --git a/sw/inc/unobookmark.hxx b/sw/inc/unobookmark.hxx
new file mode 100644
index 000000000000..2b16d7828001
--- /dev/null
+++ b/sw/inc/unobookmark.hxx
@@ -0,0 +1,248 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: unoobj.hxx,v $
+ *
+ * $Revision: 1.49 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org 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 version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef SW_UNOBOOKMARK_HXX
+#define SW_UNOBOOKMARK_HXX
+
+#include <com/sun/star/lang/XUnoTunnel.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/container/XNamed.hpp>
+#include <com/sun/star/text/XTextContent.hpp>
+#include <com/sun/star/text/XFormField.hpp>
+
+#include <cppuhelper/implbase5.hxx>
+
+#include <tools/string.hxx>
+#include <sfx2/Metadatable.hxx>
+
+#include <IDocumentMarkAccess.hxx>
+#include <calbck.hxx>
+#include <unoevtlstnr.hxx>
+
+
+class SwDoc;
+
+
+typedef ::cppu::ImplInheritanceHelper5
+< ::sfx2::MetadatableMixin
+, ::com::sun::star::lang::XUnoTunnel
+, ::com::sun::star::lang::XServiceInfo
+, ::com::sun::star::beans::XPropertySet
+, ::com::sun::star::container::XNamed
+, ::com::sun::star::text::XTextContent
+> SwXBookmark_Base;
+
+class SwXBookmark
+ : public SwXBookmark_Base
+ , private SwClient
+{
+
+private:
+
+ SwEventListenerContainer m_aLstnrCntnr;
+ SwDoc* m_pDoc;
+ String m_aName;
+ ::sw::mark::IMark* m_pRegisteredBookmark;
+
+ void registerInMark(::sw::mark::IMark* const pBkmk);
+
+protected:
+
+ virtual ~SwXBookmark();
+
+public:
+
+ SwXBookmark(::sw::mark::IMark* pMark = 0, SwDoc* pDoc = 0);
+
+ const ::sw::mark::IMark* GetBookmark() const
+ { return m_pRegisteredBookmark; }
+ ::sw::mark::IMark* GetBookmark()
+ { return m_pRegisteredBookmark; }
+ SwDoc* GetDoc()
+ { return m_pDoc; }
+
+ void attachToRangeEx(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::text::XTextRange > & xTextRange,
+ IDocumentMarkAccess::MarkType eType)
+ throw (::com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::RuntimeException );
+ virtual void attachToRange(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::text::XTextRange > & xTextRange)
+ throw (::com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::RuntimeException);
+
+ TYPEINFO();
+
+ // SwClient
+ virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew );
+
+ // MetadatableMixin
+ virtual ::sfx2::Metadatable* GetCoreObject();
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::frame::XModel > GetModel();
+
+ static const ::com::sun::star::uno::Sequence< sal_Int8 >& getUnoTunnelId();
+
+ // XUnoTunnel
+ virtual sal_Int64 SAL_CALL getSomething(
+ const ::com::sun::star::uno::Sequence< sal_Int8 >& rIdentifier)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService(
+ const ::rtl::OUString& rServiceName)
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames()
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL dispose()
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addEventListener(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::lang::XEventListener > & xListener)
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeEventListener(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::lang::XEventListener > & xListener)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XPropertySet
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
+ getPropertySetInfo()
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPropertyValue(
+ const ::rtl::OUString& rPropertyName,
+ const ::com::sun::star::uno::Any& rValue)
+ throw (::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::beans::PropertyVetoException,
+ ::com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::lang::WrappedTargetException,
+ ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue(
+ const ::rtl::OUString& rPropertyName)
+ throw (::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::lang::WrappedTargetException,
+ ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addPropertyChangeListener(
+ const ::rtl::OUString& rPropertyName,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::beans::XPropertyChangeListener >& xListener)
+ throw (::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::lang::WrappedTargetException,
+ ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removePropertyChangeListener(
+ const ::rtl::OUString& rPropertyName,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::beans::XPropertyChangeListener >& xListener)
+ throw (::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::lang::WrappedTargetException,
+ ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addVetoableChangeListener(
+ const ::rtl::OUString& rPropertyName,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::beans::XVetoableChangeListener >& xListener)
+ throw (::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::lang::WrappedTargetException,
+ ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeVetoableChangeListener(
+ const ::rtl::OUString& rPropertyName,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::beans::XVetoableChangeListener >& xListener)
+ throw (::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::lang::WrappedTargetException,
+ ::com::sun::star::uno::RuntimeException);
+
+ // XNamed
+ virtual ::rtl::OUString SAL_CALL getName()
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setName(const ::rtl::OUString& rName)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XTextContent
+ virtual void SAL_CALL attach(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::text::XTextRange > & xTextRange)
+ throw (::com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::text::XTextRange > SAL_CALL getAnchor()
+ throw (::com::sun::star::uno::RuntimeException);
+
+};
+
+typedef cppu::ImplInheritanceHelper1< SwXBookmark,
+ ::com::sun::star::text::XFormField > SwXFieldmark_Base;
+
+class SwXFieldmark
+ : public SwXFieldmark_Base
+{
+
+private:
+
+ bool isReplacementObject;
+
+public:
+
+ SwXFieldmark(bool isReplacementObject,
+ ::sw::mark::IMark* pBkm = 0, SwDoc* pDoc = 0);
+
+ virtual void attachToRange(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::text::XTextRange > & xTextRange)
+ throw (::com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::RuntimeException);
+
+ virtual ::rtl::OUString SAL_CALL getDescription()
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int16 SAL_CALL getType()
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int16 SAL_CALL getRes()
+ throw (::com::sun::star::uno::RuntimeException);
+
+ virtual void SAL_CALL setDescription(const ::rtl::OUString& rDescription)
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setType(::sal_Int16 fieldType)
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setRes(::sal_Int16 res)
+ throw (::com::sun::star::uno::RuntimeException);
+
+};
+
+#endif // SW_UNOBOOKMARK_HXX
+
diff --git a/sw/inc/unoobj.hxx b/sw/inc/unoobj.hxx
index 62cf34e1a580..74197ec9b2ba 100644
--- a/sw/inc/unoobj.hxx
+++ b/sw/inc/unoobj.hxx
@@ -86,12 +86,11 @@
#include "TextCursorHelper.hxx"
#include <comphelper/uno3.hxx>
#include <cppuhelper/weakref.hxx>
-#include <com/sun/star/text/XFormField.hpp>
#include <unomid.h>
#include <tools/link.hxx>
-#include <IDocumentMarkAccess.hxx>
+#include <IMark.hxx>
#include <sfx2/Metadatable.hxx>
#include <deque>
@@ -569,116 +568,6 @@ public:
};
*/
-typedef ::cppu::ImplInheritanceHelper5
-<
- ::sfx2::MetadatableMixin,
- ::com::sun::star::text::XTextContent,
- ::com::sun::star::beans::XPropertySet,
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::container::XNamed,
- ::com::sun::star::lang::XUnoTunnel
->
-SwBookmarkBaseClass;
-
-class SwXBookmark
- : public SwBookmarkBaseClass
- , private SwClient
-{
- private:
- SwEventListenerContainer m_aLstnrCntnr;
- SwDoc* m_pDoc;
- String m_aName;
- ::sw::mark::IMark* m_pRegisteredBookmark;
-
- void registerInMark(::sw::mark::IMark* const pBkmk)
- {
- if(pBkmk)
- pBkmk->Add(this);
- else if(m_pRegisteredBookmark)
- {
- m_aName = m_pRegisteredBookmark->GetName();
- m_pRegisteredBookmark->Remove(this);
- }
- m_pRegisteredBookmark = pBkmk;
- }
-
- protected:
- virtual ~SwXBookmark();
- public:
- SwXBookmark(::sw::mark::IMark* pMark = 0, SwDoc* pDoc = 0);
-
- TYPEINFO();
-
- static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId();
-
- //XUnoTunnel
- virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException);
-
- //XTextContent
- virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException);
-
- //XComponent
- virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException );
- virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException );
- virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException );
-
- //XNamed
- virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException );
- virtual void SAL_CALL setName(const rtl::OUString& rName) throw( ::com::sun::star::uno::RuntimeException );
-
- //XServiceInfo
- virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException );
- virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException );
- virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
-
- //XPropertySet
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
-
- void attachToRangeEx(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange, IDocumentMarkAccess::MarkType eType) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
- virtual void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
-
- //SwClient
- virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew );
-
- // MetadatableMixin
- virtual ::sfx2::Metadatable* GetCoreObject();
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::frame::XModel > GetModel();
-
- const ::sw::mark::IMark* GetBookmark() const
- { return m_pRegisteredBookmark; }
- ::sw::mark::IMark* GetBookmark()
- { return m_pRegisteredBookmark; }
- SwDoc* GetDoc()
- { return m_pDoc; }
-};
-
-typedef cppu::ImplInheritanceHelper1< SwXBookmark, ::com::sun::star::text::XFormField > SwXFieldmark_BASE;
-
-class SwXFieldmark : public SwXFieldmark_BASE
-{
- private:
- bool isReplacementObject;
- public:
- SwXFieldmark(bool isReplacementObject, ::sw::mark::IMark* pBkm = 0, SwDoc* pDoc = 0);
-
- virtual void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
- virtual ::rtl::OUString SAL_CALL getDescription(void) throw( ::com::sun::star::uno::RuntimeException );
- virtual ::sal_Int16 SAL_CALL getType( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Int16 SAL_CALL getRes( ) throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL setType( ::sal_Int16 fieldType ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setRes( ::sal_Int16 res ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setDescription( const ::rtl::OUString& description ) throw (::com::sun::star::uno::RuntimeException);
-};
-
/*-----------------23.02.98 10:45-------------------
--------------------------------------------------*/
diff --git a/sw/source/core/crsr/bookmrk.cxx b/sw/source/core/crsr/bookmrk.cxx
index 3cdfa7ec03e4..1028c7b2b432 100644
--- a/sw/source/core/crsr/bookmrk.cxx
+++ b/sw/source/core/crsr/bookmrk.cxx
@@ -42,7 +42,7 @@
#include <svx/linkmgr.hxx>
#include <swtypes.hxx>
#include <undobj.hxx>
-#include <unoobj.hxx>
+#include <unobookmark.hxx>
#include <rtl/random.h>
diff --git a/sw/source/core/unocore/unobkm.cxx b/sw/source/core/unocore/unobkm.cxx
index 0a9528823689..da9568603b01 100644
--- a/sw/source/core/unocore/unobkm.cxx
+++ b/sw/source/core/unocore/unobkm.cxx
@@ -31,7 +31,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
+#include <unobookmark.hxx>
#include <vos/mutex.hxx>
#include <vcl/svapp.hxx>
#include <unoobj.hxx>
@@ -74,6 +74,20 @@ namespace
******************************************************************/
TYPEINIT1(SwXBookmark, SwClient)
+void SwXBookmark::registerInMark(::sw::mark::IMark* const pBkmk)
+{
+ if (pBkmk)
+ {
+ pBkmk->Add(this);
+ }
+ else if (m_pRegisteredBookmark)
+ {
+ m_aName = m_pRegisteredBookmark->GetName();
+ m_pRegisteredBookmark->Remove(this);
+ }
+ m_pRegisteredBookmark = pBkmk;
+}
+
const uno::Sequence< sal_Int8 > & SwXBookmark::getUnoTunnelId()
{
static uno::Sequence< sal_Int8 > aSeq = ::CreateUnoTunnelId();
@@ -353,7 +367,7 @@ void SwXBookmark::removeVetoableChangeListener(const OUString& /*PropertyName*/,
{ }
SwXFieldmark::SwXFieldmark(bool _isReplacementObject, ::sw::mark::IMark* pBkm, SwDoc* pDc)
- : SwXFieldmark_BASE(pBkm, pDc)
+ : SwXFieldmark_Base(pBkm, pDc)
, isReplacementObject(_isReplacementObject)
{ }
diff --git a/sw/source/core/unocore/unocoll.cxx b/sw/source/core/unocore/unocoll.cxx
index d7315e42383d..cc9c3d34050a 100644
--- a/sw/source/core/unocore/unocoll.cxx
+++ b/sw/source/core/unocore/unocoll.cxx
@@ -75,6 +75,7 @@
#include <slist>
#include <iterator>
+#include <unobookmark.hxx>
#include <unorefmark.hxx>
#include <unometa.hxx>
#include "docsh.hxx"
diff --git a/sw/source/core/unocore/unoportenum.cxx b/sw/source/core/unocore/unoportenum.cxx
index be51783b955f..ad3e52cff75b 100644
--- a/sw/source/core/unocore/unoportenum.cxx
+++ b/sw/source/core/unocore/unoportenum.cxx
@@ -48,6 +48,7 @@
#include <unoclbck.hxx>
#include <unoobj.hxx>
#include <unorefmark.hxx>
+#include <unobookmark.hxx>
#include <unoredline.hxx>
#include <unofield.hxx>
#include <unometa.hxx>
diff --git a/sw/source/core/unocore/unotext.cxx b/sw/source/core/unocore/unotext.cxx
index c16498a51979..bbb371d66974 100644
--- a/sw/source/core/unocore/unotext.cxx
+++ b/sw/source/core/unocore/unotext.cxx
@@ -40,6 +40,7 @@
#include <vcl/svapp.hxx>
#include <rtl/uuid.h>
#include <unoobj.hxx>
+#include <unobookmark.hxx>
#include <unorefmark.hxx>
#include <unoport.hxx>
#include <unotbl.hxx>
diff --git a/sw/source/ui/uno/unotxvw.cxx b/sw/source/ui/uno/unotxvw.cxx
index 6197bb489d61..6ed41d64c7a6 100644
--- a/sw/source/ui/uno/unotxvw.cxx
+++ b/sw/source/ui/uno/unotxvw.cxx
@@ -77,6 +77,7 @@
#include <SwStyleNameMapper.hxx>
#include <crsskip.hxx>
#include <com/sun/star/beans/PropertyAttribute.hpp>
+#include <unobookmark.hxx>
#include <svx/editview.hxx>
#include <sfx2/docfile.hxx>