diff --git a/sw/inc/unostyle.hxx b/sw/inc/unostyle.hxx index 77c2cc8856c0..b6f4d9abd96b 100644 --- a/sw/inc/unostyle.hxx +++ b/sw/inc/unostyle.hxx @@ -48,6 +48,8 @@ class SwXStyle; class SwXTextCellStyle; class SwXPageStyle; class SwXFrameStyle; +class StyleFamilyEntry; +class SwXStyleFamily; class SwXStyleFamilies final : public cppu::WeakImplHelper < @@ -60,7 +62,7 @@ class SwXStyleFamilies final : public cppu::WeakImplHelper { SwDocShell* m_pDocShell; - std::map> m_vFamilies; + std::map> m_vFamilies; virtual ~SwXStyleFamilies() override; public: @@ -88,6 +90,12 @@ public: virtual sal_Bool SAL_CALL supportsService(const OUString& ServiceName) override; virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override; + SW_DLLPUBLIC rtl::Reference GetPageStyles(); + SW_DLLPUBLIC rtl::Reference GetCharacterStyles(); + SW_DLLPUBLIC rtl::Reference GetParagraphStyles(); + rtl::Reference GetStylesByName(const OUString& rName); + rtl::Reference GetStylesByIndex(sal_Int32 nIndex); + static css::uno::Reference CreateStyle(SfxStyleFamily eFamily, SwDoc& rDoc); static rtl::Reference CreateStyleCharOrParaOrPseudo(SfxStyleFamily eFamily, SwDoc& rDoc); static rtl::Reference CreateStylePage(SwDoc& rDoc); @@ -390,4 +398,59 @@ class SwXTextCellStyle final : public cppu::WeakImplHelper static rtl::Reference CreateXTextCellStyle(SwDocShell* pDocShell, const OUString& sName); }; +class SW_DLLPUBLIC SwXStyleFamily final : public cppu::WeakImplHelper +< + css::container::XNameContainer, + css::lang::XServiceInfo, + css::container::XIndexAccess, + css::beans::XPropertySet +> +, public SfxListener +{ + const StyleFamilyEntry& m_rEntry; + SfxStyleSheetBasePool* m_pBasePool; + SwDocShell* m_pDocShell; + + SwXStyle* FindStyle(std::u16string_view rStyleName) const; + sal_Int32 GetCountOrName(OUString* pString, sal_Int32 nIndex = SAL_MAX_INT32); + static const StyleFamilyEntry& InitEntry(SfxStyleFamily eFamily); +public: + SwXStyleFamily(SwDocShell* pDocShell, const SfxStyleFamily eFamily); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount() override; + virtual css::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) override; + + //XElementAccess + virtual css::uno::Type SAL_CALL getElementType( ) override; + virtual sal_Bool SAL_CALL hasElements( ) override; + + //XNameAccess + virtual css::uno::Any SAL_CALL getByName(const OUString& Name) override; + virtual css::uno::Sequence< OUString > SAL_CALL getElementNames() override; + virtual sal_Bool SAL_CALL hasByName(const OUString& Name) override; + + //XNameContainer + virtual void SAL_CALL insertByName(const OUString& Name, const css::uno::Any& Element) override; + virtual void SAL_CALL replaceByName(const OUString& Name, const css::uno::Any& Element) override; + virtual void SAL_CALL removeByName(const OUString& Name) override; + + //XPropertySet + virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override; + virtual void SAL_CALL setPropertyValue( const OUString&, const css::uno::Any&) override; + virtual css::uno::Any SAL_CALL getPropertyValue( const OUString& PropertyName ) override; + virtual void SAL_CALL addPropertyChangeListener( const OUString&, const css::uno::Reference&) override; + virtual void SAL_CALL removePropertyChangeListener( const OUString&, const css::uno::Reference&) override; + virtual void SAL_CALL addVetoableChangeListener(const OUString&, const css::uno::Reference&) override; + virtual void SAL_CALL removeVetoableChangeListener(const OUString&, const css::uno::Reference&) override; + + //SfxListener + virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override; + + //XServiceInfo + virtual OUString SAL_CALL getImplementationName() override; + virtual sal_Bool SAL_CALL supportsService(const OUString& rServiceName) override; + virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override; +}; + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/inc/unotxdoc.hxx b/sw/inc/unotxdoc.hxx index 38d67effb9ff..b3a308f37761 100644 --- a/sw/inc/unotxdoc.hxx +++ b/sw/inc/unotxdoc.hxx @@ -538,6 +538,7 @@ public: rtl::Reference createEndnote(); rtl::Reference createTextEmbeddedObject(); rtl::Reference createEmbeddedObjectResolver(); + rtl::Reference< SwXStyleFamilies > getSwStyleFamilies(); }; class SwXLinkTargetSupplier final : public cppu::WeakImplHelper diff --git a/sw/source/core/unocore/unostyle.cxx b/sw/source/core/unocore/unostyle.cxx index ebabef689cef..eadcc025a665 100644 --- a/sw/source/core/unocore/unostyle.cxx +++ b/sw/source/core/unocore/unostyle.cxx @@ -586,108 +586,91 @@ static rtl::Reference CreateStyleCell(SwDocShell* pDocShell, c return SwXTextCellStyle::CreateXTextCellStyle(pDocShell, sStyleName); } -namespace { - -class XStyleFamily : public cppu::WeakImplHelper -< - container::XNameContainer, - lang::XServiceInfo, - container::XIndexAccess, - beans::XPropertySet -> -, public SfxListener +sal_Int32 SwXStyleFamily::GetCountOrName(OUString* pString, sal_Int32 nIndex) { - const StyleFamilyEntry& m_rEntry; - SfxStyleSheetBasePool* m_pBasePool; - SwDocShell* m_pDocShell; - - SwXStyle* FindStyle(std::u16string_view rStyleName) const; - sal_Int32 GetCountOrName(OUString* pString, sal_Int32 nIndex = SAL_MAX_INT32) - { return m_rEntry.getCountOrName(*m_pDocShell->GetDoc(), pString, nIndex); }; - static const StyleFamilyEntry& InitEntry(SfxStyleFamily eFamily) - { - auto& entries = lcl_GetStyleFamilyEntries(); - const auto pEntry = std::find_if(entries.begin(), entries.end(), - [eFamily] (const StyleFamilyEntry& e) { return e.family() == eFamily; }); - assert(pEntry != entries.end()); - return *pEntry; - } -public: - XStyleFamily(SwDocShell* pDocShell, const SfxStyleFamily eFamily) - : m_rEntry(InitEntry(eFamily)) - , m_pBasePool(pDocShell->GetStyleSheetPool()) - , m_pDocShell(pDocShell) - { - if (m_pBasePool) //tdf#124142 html docs can have no styles - StartListening(*m_pBasePool); - } - - //XIndexAccess - virtual sal_Int32 SAL_CALL getCount() override - { - SolarMutexGuard aGuard; - return GetCountOrName(nullptr); - }; - virtual uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) override; - - //XElementAccess - virtual uno::Type SAL_CALL getElementType( ) override - { return cppu::UnoType::get(); }; - virtual sal_Bool SAL_CALL hasElements( ) override - { - if(!m_pBasePool) - throw uno::RuntimeException(); - return true; - } - - //XNameAccess - virtual uno::Any SAL_CALL getByName(const OUString& Name) override; - virtual uno::Sequence< OUString > SAL_CALL getElementNames() override; - virtual sal_Bool SAL_CALL hasByName(const OUString& Name) override; - - //XNameContainer - virtual void SAL_CALL insertByName(const OUString& Name, const uno::Any& Element) override; - virtual void SAL_CALL replaceByName(const OUString& Name, const uno::Any& Element) override; - virtual void SAL_CALL removeByName(const OUString& Name) override; - - //XPropertySet - virtual uno::Reference< beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override - { return {}; }; - virtual void SAL_CALL setPropertyValue( const OUString&, const uno::Any&) override - { SAL_WARN("sw.uno", "###unexpected!"); }; - virtual uno::Any SAL_CALL getPropertyValue( const OUString& PropertyName ) override; - virtual void SAL_CALL addPropertyChangeListener( const OUString&, const uno::Reference&) override - { SAL_WARN("sw.uno", "###unexpected!"); }; - virtual void SAL_CALL removePropertyChangeListener( const OUString&, const uno::Reference&) override - { SAL_WARN("sw.uno", "###unexpected!"); }; - virtual void SAL_CALL addVetoableChangeListener(const OUString&, const uno::Reference&) override - { SAL_WARN("sw.uno", "###unexpected!"); }; - virtual void SAL_CALL removeVetoableChangeListener(const OUString&, const uno::Reference&) override - { SAL_WARN("sw.uno", "###unexpected!"); }; - - //SfxListener - virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override - { - if(rHint.GetId() == SfxHintId::Dying) - { - m_pBasePool = nullptr; - m_pDocShell = nullptr; - EndListening(rBC); - } - } - - //XServiceInfo - virtual OUString SAL_CALL getImplementationName() override - { return {u"XStyleFamily"_ustr}; }; - virtual sal_Bool SAL_CALL supportsService(const OUString& rServiceName) override - { return cppu::supportsService(this, rServiceName); }; - virtual uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override - { return { u"com.sun.star.style.StyleFamily"_ustr }; } + return m_rEntry.getCountOrName(*m_pDocShell->GetDoc(), pString, nIndex); }; + +/*static*/ const StyleFamilyEntry& SwXStyleFamily::InitEntry(SfxStyleFamily eFamily) +{ + auto& entries = lcl_GetStyleFamilyEntries(); + const auto pEntry = std::find_if(entries.begin(), entries.end(), + [eFamily] (const StyleFamilyEntry& e) { return e.family() == eFamily; }); + assert(pEntry != entries.end()); + return *pEntry; } +SwXStyleFamily::SwXStyleFamily(SwDocShell* pDocShell, const SfxStyleFamily eFamily) + : m_rEntry(InitEntry(eFamily)) + , m_pBasePool(pDocShell->GetStyleSheetPool()) + , m_pDocShell(pDocShell) +{ + if (m_pBasePool) //tdf#124142 html docs can have no styles + StartListening(*m_pBasePool); +} + +//XIndexAccess +sal_Int32 SAL_CALL SwXStyleFamily::getCount() +{ + SolarMutexGuard aGuard; + return GetCountOrName(nullptr); +}; + + //XElementAccess +uno::Type SAL_CALL SwXStyleFamily::getElementType() +{ + return cppu::UnoType::get(); +}; + +sal_Bool SAL_CALL SwXStyleFamily::hasElements() +{ + if(!m_pBasePool) + throw uno::RuntimeException(); + return true; +} + +//XPropertySet +uno::Reference< beans::XPropertySetInfo > SAL_CALL SwXStyleFamily::getPropertySetInfo() +{ return {}; }; + +void SAL_CALL SwXStyleFamily::setPropertyValue( const OUString&, const uno::Any&) +{ SAL_WARN("sw.uno", "###unexpected!"); }; + +void SAL_CALL SwXStyleFamily::addPropertyChangeListener( const OUString&, const uno::Reference&) +{ SAL_WARN("sw.uno", "###unexpected!"); }; + +void SAL_CALL SwXStyleFamily::removePropertyChangeListener( const OUString&, const uno::Reference&) +{ SAL_WARN("sw.uno", "###unexpected!"); }; + +void SAL_CALL SwXStyleFamily::addVetoableChangeListener(const OUString&, const uno::Reference&) +{ SAL_WARN("sw.uno", "###unexpected!"); }; + +void SAL_CALL SwXStyleFamily::removeVetoableChangeListener(const OUString&, const uno::Reference&) +{ SAL_WARN("sw.uno", "###unexpected!"); }; + +//SfxListener +void SwXStyleFamily::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) +{ + if(rHint.GetId() == SfxHintId::Dying) + { + m_pBasePool = nullptr; + m_pDocShell = nullptr; + EndListening(rBC); + } +} + +//XServiceInfo +OUString SAL_CALL SwXStyleFamily::getImplementationName() +{ return {u"XStyleFamily"_ustr}; }; + +sal_Bool SAL_CALL SwXStyleFamily::supportsService(const OUString& rServiceName) +{ return cppu::supportsService(this, rServiceName); }; + +uno::Sequence< OUString > SAL_CALL SwXStyleFamily::getSupportedServiceNames() +{ return { u"com.sun.star.style.StyleFamily"_ustr }; } + OUString SwXStyleFamilies::getImplementationName() - { return {u"SwXStyleFamilies"_ustr}; } +{ return {u"SwXStyleFamilies"_ustr}; } sal_Bool SwXStyleFamilies::supportsService(const OUString& rServiceName) { @@ -706,6 +689,11 @@ SwXStyleFamilies::~SwXStyleFamilies() { } uno::Any SAL_CALL SwXStyleFamilies::getByName(const OUString& Name) +{ + return uno::Any(uno::Reference(static_cast(GetStylesByName(Name).get()))); +} + +rtl::Reference SwXStyleFamilies::GetStylesByName(const OUString& Name) { SolarMutexGuard aGuard; if(!IsValid()) @@ -715,7 +703,22 @@ uno::Any SAL_CALL SwXStyleFamilies::getByName(const OUString& Name) [&Name] (const StyleFamilyEntry& e) { return e.name() == Name; }); if(pEntry == entries.end()) throw container::NoSuchElementException(); - return getByIndex(pEntry - entries.begin()); + return GetStylesByIndex(pEntry - entries.begin()); +} + +rtl::Reference SwXStyleFamilies::GetPageStyles() +{ + return GetStylesByName(u"PageStyles"_ustr); +} + +rtl::Reference SwXStyleFamilies::GetCharacterStyles() +{ + return GetStylesByName(u"CharacterStyles"_ustr); +} + +rtl::Reference SwXStyleFamilies::GetParagraphStyles() +{ + return GetStylesByName(u"ParagraphStyles"_ustr); } uno::Sequence< OUString > SwXStyleFamilies::getElementNames() @@ -740,6 +743,11 @@ sal_Int32 SwXStyleFamilies::getCount() } uno::Any SwXStyleFamilies::getByIndex(sal_Int32 nIndex) +{ + return uno::Any(uno::Reference(static_cast(GetStylesByIndex(nIndex).get()))); +} + +rtl::Reference SwXStyleFamilies::GetStylesByIndex(sal_Int32 nIndex) { auto& entries(lcl_GetStyleFamilyEntries()); SolarMutexGuard aGuard; @@ -751,8 +759,8 @@ uno::Any SwXStyleFamilies::getByIndex(sal_Int32 nIndex) assert(eFamily != SfxStyleFamily::All); auto& rxFamily = m_vFamilies[eFamily]; if(!rxFamily.is()) - rxFamily = new XStyleFamily(m_pDocShell, eFamily); - return uno::Any(rxFamily); + rxFamily = new SwXStyleFamily(m_pDocShell, eFamily); + return rxFamily; } uno::Type SwXStyleFamilies::getElementType() @@ -888,7 +896,7 @@ rtl::Reference SwXStyleFamilies::CreateStyleCell(SwDoc& rDoc) uno::Reference SwXStyleFamilies::CreateStyleCondParagraph(SwDoc& rDoc) { return new SwXStyle(&rDoc, SfxStyleFamily::Para, true); }; -uno::Any XStyleFamily::getByIndex(sal_Int32 nIndex) +uno::Any SwXStyleFamily::getByIndex(sal_Int32 nIndex) { SolarMutexGuard aGuard; if(nIndex < 0) @@ -907,7 +915,7 @@ uno::Any XStyleFamily::getByIndex(sal_Int32 nIndex) return getByName(sStyleName); } -uno::Any XStyleFamily::getByName(const OUString& rName) +uno::Any SwXStyleFamily::getByName(const OUString& rName) { SolarMutexGuard aGuard; OUString sStyleName; @@ -944,7 +952,7 @@ uno::Any XStyleFamily::getByName(const OUString& rName) return uno::Any(xStyle); } -uno::Sequence XStyleFamily::getElementNames() +uno::Sequence SwXStyleFamily::getElementNames() { SolarMutexGuard aGuard; if(!m_pBasePool) @@ -960,7 +968,7 @@ uno::Sequence XStyleFamily::getElementNames() return comphelper::containerToSequence(vRet); } -sal_Bool XStyleFamily::hasByName(const OUString& rName) +sal_Bool SwXStyleFamily::hasByName(const OUString& rName) { SolarMutexGuard aGuard; if(!m_pBasePool) @@ -971,7 +979,7 @@ sal_Bool XStyleFamily::hasByName(const OUString& rName) return nullptr != pBase; } -void XStyleFamily::insertByName(const OUString& rName, const uno::Any& rElement) +void SwXStyleFamily::insertByName(const OUString& rName, const uno::Any& rElement) { SolarMutexGuard aGuard; if(!m_pBasePool) @@ -1026,7 +1034,7 @@ void XStyleFamily::insertByName(const OUString& rName, const uno::Any& rElement) } } -void XStyleFamily::replaceByName(const OUString& rName, const uno::Any& rElement) +void SwXStyleFamily::replaceByName(const OUString& rName, const uno::Any& rElement) { SolarMutexGuard aGuard; if(!m_pBasePool) @@ -1087,7 +1095,7 @@ void XStyleFamily::replaceByName(const OUString& rName, const uno::Any& rElement } } -void XStyleFamily::removeByName(const OUString& rName) +void SwXStyleFamily::removeByName(const OUString& rName) { SolarMutexGuard aGuard; if(!m_pBasePool) @@ -1111,7 +1119,7 @@ void XStyleFamily::removeByName(const OUString& rName) m_pBasePool->Remove(pBase); } -uno::Any SAL_CALL XStyleFamily::getPropertyValue( const OUString& sPropertyName ) +uno::Any SAL_CALL SwXStyleFamily::getPropertyValue( const OUString& sPropertyName ) { if(sPropertyName != "DisplayName") throw beans::UnknownPropertyException( "unknown property: " + sPropertyName, getXWeak() ); @@ -1120,7 +1128,7 @@ uno::Any SAL_CALL XStyleFamily::getPropertyValue( const OUString& sPropertyName } -SwXStyle* XStyleFamily::FindStyle(std::u16string_view rStyleName) const +SwXStyle* SwXStyleFamily::FindStyle(std::u16string_view rStyleName) const { SwXStyle* pFoundStyle = nullptr; m_pBasePool->ForAllListeners( diff --git a/sw/source/uibase/uno/unotxdoc.cxx b/sw/source/uibase/uno/unotxdoc.cxx index c028d4bccaed..20c3d1cedf47 100644 --- a/sw/source/uibase/uno/unotxdoc.cxx +++ b/sw/source/uibase/uno/unotxdoc.cxx @@ -1250,6 +1250,11 @@ Reference< XNameAccess > SwXTextDocument::getTextFrames() } Reference< XNameAccess > SwXTextDocument::getStyleFamilies() +{ + return getSwStyleFamilies(); +} + +rtl::Reference< SwXStyleFamilies > SwXTextDocument::getSwStyleFamilies() { SolarMutexGuard aGuard; ThrowIfInvalid(); diff --git a/sw/source/writerfilter/dmapper/DomainMapper.cxx b/sw/source/writerfilter/dmapper/DomainMapper.cxx index 202a5343e510..d4399269eec6 100644 --- a/sw/source/writerfilter/dmapper/DomainMapper.cxx +++ b/sw/source/writerfilter/dmapper/DomainMapper.cxx @@ -93,6 +93,7 @@ #include #include #include +#include #include using namespace ::com::sun::star; @@ -5085,7 +5086,7 @@ void DomainMapper::commentProps(const OUString& sId, const CommentProperties& rP m_pImpl->commentProps(sId, rProps); } -css::uno::Reference const & DomainMapper::GetCharacterStyles() +rtl::Reference const & DomainMapper::GetCharacterStyles() { return m_pImpl->GetCharacterStyles(); } diff --git a/sw/source/writerfilter/dmapper/DomainMapper.hxx b/sw/source/writerfilter/dmapper/DomainMapper.hxx index 03b6540cfca3..349029657b68 100644 --- a/sw/source/writerfilter/dmapper/DomainMapper.hxx +++ b/sw/source/writerfilter/dmapper/DomainMapper.hxx @@ -32,6 +32,7 @@ #include class SwXTextDocument; +class SwXStyleFamily; namespace com::sun::star{ namespace beans{ struct PropertyValue; @@ -142,7 +143,7 @@ public: virtual void commentProps(const OUString& sId, const CommentProperties& rProps) override; - css::uno::Reference const & GetCharacterStyles(); + rtl::Reference const & GetCharacterStyles(); OUString GetUnusedCharacterStyleName(); bool IsNewDoc() const; diff --git a/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx b/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx index 50bdd274e6f0..942f0d516d17 100644 --- a/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx +++ b/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx @@ -145,6 +145,7 @@ #include #include #include +#include #include #include #include @@ -453,11 +454,13 @@ writerfilter::ooxml::OOXMLDocument* DomainMapper_Impl::getDocumentReference() co return m_pOOXMLDocument; } -uno::Reference< container::XNameContainer > const & DomainMapper_Impl::GetPageStyles() +rtl::Reference< SwXStyleFamily > const & DomainMapper_Impl::GetPageStyles() { - if(!m_xPageStyles1.is() && m_xTextDocument) - m_xTextDocument->getStyleFamilies()->getByName(u"PageStyles"_ustr) >>= m_xPageStyles1; - return m_xPageStyles1; + if(!m_xPageStyles.is() && m_xTextDocument) + { + m_xPageStyles = m_xTextDocument->getSwStyleFamilies()->GetPageStyles(); + } + return m_xPageStyles; } OUString DomainMapper_Impl::GetUnusedPageStyleName() @@ -487,17 +490,21 @@ OUString DomainMapper_Impl::GetUnusedPageStyleName() return sPageStyleName; } -uno::Reference< container::XNameContainer > const & DomainMapper_Impl::GetCharacterStyles() +rtl::Reference< SwXStyleFamily > const & DomainMapper_Impl::GetCharacterStyles() { if(!m_xCharacterStyles.is() && m_xTextDocument) - m_xTextDocument->getStyleFamilies()->getByName(u"CharacterStyles"_ustr) >>= m_xCharacterStyles; + { + m_xCharacterStyles = m_xTextDocument->getSwStyleFamilies()->GetCharacterStyles(); + } return m_xCharacterStyles; } -uno::Reference const& DomainMapper_Impl::GetParagraphStyles() +rtl::Reference const& DomainMapper_Impl::GetParagraphStyles() { if (!m_xParagraphStyles.is() && m_xTextDocument) - m_xTextDocument->getStyleFamilies()->getByName(u"ParagraphStyles"_ustr) >>= m_xParagraphStyles; + { + m_xParagraphStyles = m_xTextDocument->getSwStyleFamilies()->GetParagraphStyles(); + } return m_xParagraphStyles; } diff --git a/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx b/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx index 223992082645..f40fa1dec1e7 100644 --- a/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx +++ b/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx @@ -62,6 +62,7 @@ class SwXTextField; class SwXTextFrame; class SwXTextEmbeddedObject; class SwXText; +class SwXStyleFamily; namespace com::sun::star{ namespace awt{ struct Size; @@ -546,11 +547,11 @@ private: rtl::Reference m_xTextDocument; rtl::Reference m_xDocumentSettings; css::uno::Reference m_xComponentContext; - css::uno::Reference m_xPageStyles1; + rtl::Reference m_xPageStyles; // cache next available number, expensive to repeatedly compute std::optional m_xNextUnusedPageStyleNo; - css::uno::Reference m_xCharacterStyles; - css::uno::Reference m_xParagraphStyles; + rtl::Reference m_xCharacterStyles; + rtl::Reference m_xParagraphStyles; // cache next available number, expensive to repeatedly compute std::optional m_xNextUnusedCharacterStyleNo; @@ -721,10 +722,10 @@ public: return m_pLastSectionContext.get( ); } - css::uno::Reference const & GetPageStyles(); + rtl::Reference const & GetPageStyles(); OUString GetUnusedPageStyleName(); - css::uno::Reference const & GetCharacterStyles(); - css::uno::Reference const& GetParagraphStyles(); + rtl::Reference const & GetCharacterStyles(); + rtl::Reference const& GetParagraphStyles(); OUString GetUnusedCharacterStyleName(); rtl::Reference const & GetBodyText(); const rtl::Reference& GetTextDocument() const diff --git a/sw/source/writerfilter/dmapper/PropertyMap.cxx b/sw/source/writerfilter/dmapper/PropertyMap.cxx index ce9b20c2f1f9..21638e5180c5 100644 --- a/sw/source/writerfilter/dmapper/PropertyMap.cxx +++ b/sw/source/writerfilter/dmapper/PropertyMap.cxx @@ -68,6 +68,7 @@ #include #include #include +#include #include #include @@ -484,7 +485,7 @@ SectionPropertyMap::SectionPropertyMap( bool bIsFirstSection ) rtl::Reference SectionPropertyMap::GetPageStyle(DomainMapper_Impl& rDM_Impl) { - const uno::Reference< container::XNameContainer >& xPageStyles = rDM_Impl.GetPageStyles(); + const rtl::Reference< SwXStyleFamily >& xPageStyles = rDM_Impl.GetPageStyles(); rtl::Reference xReturnPageStyle; try { diff --git a/sw/source/writerfilter/dmapper/StyleSheetTable.cxx b/sw/source/writerfilter/dmapper/StyleSheetTable.cxx index 5c259de5ff38..18adf5b764a6 100644 --- a/sw/source/writerfilter/dmapper/StyleSheetTable.cxx +++ b/sw/source/writerfilter/dmapper/StyleSheetTable.cxx @@ -54,6 +54,7 @@ #include #include #include +#include #include using namespace ::com::sun::star; @@ -2145,7 +2146,7 @@ OUString StyleSheetTable::getOrCreateCharStyle( PropertyValueVector_t& rCharProp return sListLabel; //create a new one otherwise - const uno::Reference< container::XNameContainer >& xCharStyles = m_pImpl->m_rDMapper.GetCharacterStyles(); + const rtl::Reference< SwXStyleFamily >& xCharStyles = m_pImpl->m_rDMapper.GetCharacterStyles(); sListLabel = m_pImpl->m_rDMapper.GetUnusedCharacterStyleName(); if (!m_pImpl->m_xTextDocument) throw uno::RuntimeException();