1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_SW_INC_UNOSTYLE_HXX
20 #define INCLUDED_SW_INC_UNOSTYLE_HXX
22 #include <svl/style.hxx>
23 #include <svl/lstner.hxx>
24 #include <unocoll.hxx>
26 #include <com/sun/star/style/XStyle.hpp>
27 #include <com/sun/star/lang/XUnoTunnel.hpp>
28 #include <com/sun/star/style/XStyleLoader.hpp>
29 #include <com/sun/star/container/XNameContainer.hpp>
30 #include <com/sun/star/beans/XPropertySet.hpp>
31 #include <com/sun/star/beans/XMultiPropertySet.hpp>
32 #include <com/sun/star/beans/XPropertyState.hpp>
33 #include <com/sun/star/beans/XMultiPropertyStates.hpp>
34 #include <cppuhelper/implbase.hxx>
35 #include <com/sun/star/document/XEventsSupplier.hpp>
38 #include <com/sun/star/style/XAutoStyleFamily.hpp>
39 #include <com/sun/star/style/XAutoStyles.hpp>
40 #include <com/sun/star/style/XAutoStyle.hpp>
42 #include <istyleaccess.hxx>
46 class SfxItemPropertySet
;
48 class SwStyleProperties_Impl
;
49 class SwAutoStylesEnumImpl
;
52 typedef std::shared_ptr
<SfxItemSet
> SfxItemSet_Pointer_t
;
54 class SwXStyleFamilies
: public cppu::WeakImplHelper
56 ::com::sun::star::container::XIndexAccess
,
57 ::com::sun::star::container::XNameAccess
,
58 ::com::sun::star::lang::XServiceInfo
,
59 ::com::sun::star::style::XStyleLoader
61 public SwUnoCollection
63 SwDocShell
* pDocShell
;
65 ::com::sun::star::uno::Reference
< ::com::sun::star::container::XNameContainer
> * pxCharStyles
;
66 ::com::sun::star::uno::Reference
< ::com::sun::star::container::XNameContainer
> * pxParaStyles
;
67 ::com::sun::star::uno::Reference
< ::com::sun::star::container::XNameContainer
> * pxFrameStyles
;
68 ::com::sun::star::uno::Reference
< ::com::sun::star::container::XNameContainer
> * pxPageStyles
;
69 ::com::sun::star::uno::Reference
< ::com::sun::star::container::XNameContainer
> * pxNumberingStyles
;
71 virtual ~SwXStyleFamilies();
73 SwXStyleFamilies(SwDocShell
& rDocShell
);
76 virtual ::com::sun::star::uno::Any SAL_CALL
getByName(const OUString
& Name
) throw( ::com::sun::star::container::NoSuchElementException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
77 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getElementNames() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
78 virtual sal_Bool SAL_CALL
hasByName(const OUString
& Name
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
81 virtual sal_Int32 SAL_CALL
getCount() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
82 virtual ::com::sun::star::uno::Any SAL_CALL
getByIndex(sal_Int32 nIndex
) throw( ::com::sun::star::lang::IndexOutOfBoundsException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
85 virtual ::com::sun::star::uno::Type SAL_CALL
getElementType( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
86 virtual sal_Bool SAL_CALL
hasElements( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
89 virtual void SAL_CALL
loadStylesFromURL(const OUString
& rURL
, const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& aOptions
)
90 throw (::com::sun::star::io::IOException
,
91 ::com::sun::star::uno::RuntimeException
,
92 std::exception
) SAL_OVERRIDE
;
93 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> SAL_CALL
getStyleLoaderOptions() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
96 virtual OUString SAL_CALL
getImplementationName() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
97 virtual sal_Bool SAL_CALL
supportsService(const OUString
& ServiceName
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
98 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getSupportedServiceNames() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
101 class SwXStyleFamily
: public cppu::WeakImplHelper
103 ::com::sun::star::container::XNameContainer
,
104 ::com::sun::star::lang::XServiceInfo
,
105 ::com::sun::star::container::XIndexAccess
,
106 ::com::sun::star::beans::XPropertySet
110 SfxStyleFamily eFamily
;
111 SfxStyleSheetBasePool
* pBasePool
;
112 SwDocShell
* pDocShell
;
114 SwXStyle
* _FindStyle(const OUString
& rStyleName
) const;
116 SwXStyleFamily(SwDocShell
* pDocShell
, sal_uInt16 nFamily
);
117 virtual ~SwXStyleFamily();
120 virtual sal_Int32 SAL_CALL
getCount() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
121 virtual ::com::sun::star::uno::Any SAL_CALL
getByIndex(sal_Int32 nIndex
) throw( ::com::sun::star::lang::IndexOutOfBoundsException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
124 virtual ::com::sun::star::uno::Type SAL_CALL SAL_CALL
getElementType( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
125 virtual sal_Bool SAL_CALL SAL_CALL
hasElements( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
128 virtual ::com::sun::star::uno::Any SAL_CALL
getByName(const OUString
& Name
) throw( ::com::sun::star::container::NoSuchElementException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
129 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getElementNames() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
130 virtual sal_Bool SAL_CALL
hasByName(const OUString
& Name
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
133 virtual void SAL_CALL
insertByName(const OUString
& Name
, const ::com::sun::star::uno::Any
& Element
) throw( ::com::sun::star::lang::IllegalArgumentException
, ::com::sun::star::container::ElementExistException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
134 virtual void SAL_CALL
replaceByName(const OUString
& Name
, const ::com::sun::star::uno::Any
& Element
) throw( ::com::sun::star::lang::IllegalArgumentException
, ::com::sun::star::container::NoSuchElementException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
135 virtual void SAL_CALL
removeByName(const OUString
& Name
) throw( ::com::sun::star::container::NoSuchElementException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
138 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySetInfo
> SAL_CALL
getPropertySetInfo( ) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
139 virtual void SAL_CALL
setPropertyValue( const 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
, std::exception
) SAL_OVERRIDE
;
140 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyValue( const OUString
& PropertyName
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
141 virtual void SAL_CALL
addPropertyChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
142 virtual void SAL_CALL
removePropertyChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
143 virtual void SAL_CALL
addVetoableChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
144 virtual void SAL_CALL
removeVetoableChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
147 virtual void Notify( SfxBroadcaster
& rBC
, const SfxHint
& rHint
) SAL_OVERRIDE
;
150 virtual OUString SAL_CALL
getImplementationName() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
151 virtual sal_Bool SAL_CALL
supportsService(const OUString
& ServiceName
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
152 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getSupportedServiceNames() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
155 class SwXStyle
: public cppu::WeakImplHelper
157 ::com::sun::star::style::XStyle
,
158 ::com::sun::star::beans::XPropertySet
,
159 ::com::sun::star::beans::XMultiPropertySet
,
160 ::com::sun::star::lang::XServiceInfo
,
161 ::com::sun::star::lang::XUnoTunnel
,
162 ::com::sun::star::beans::XPropertyState
,
163 ::com::sun::star::beans::XMultiPropertyStates
168 friend class SwXStyleFamily
;
170 OUString m_sStyleName
;
171 SfxStyleSheetBasePool
* pBasePool
;
172 SfxStyleFamily eFamily
; // for Notify
174 bool bIsDescriptor
: 1;
175 bool bIsConditional
: 1;
176 OUString m_sParentStyleName
;
177 SwStyleProperties_Impl
* pPropImpl
;
179 void ApplyDescriptorProperties();
183 const SfxStyleSheetBasePool
* GetBasePool() const {return pBasePool
;}
184 SfxStyleSheetBasePool
* GetBasePool() {return pBasePool
;}
186 void SetStyleName(const OUString
& rSet
){ m_sStyleName
= rSet
;}
187 SwStyleProperties_Impl
* GetPropImpl(){return pPropImpl
;}
188 com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySet
> mxStyleData
;
189 com::sun::star::uno::Reference
< ::com::sun::star::container::XNameAccess
> mxStyleFamily
;
191 void SAL_CALL
SetPropertyValues_Impl( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
>& aValues
)
192 throw (::com::sun::star::beans::UnknownPropertyException
,
193 ::com::sun::star::beans::PropertyVetoException
,
194 ::com::sun::star::lang::IllegalArgumentException
,
195 ::com::sun::star::lang::WrappedTargetException
,
196 ::com::sun::star::uno::RuntimeException
,
198 ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
GetPropertyValues_Impl( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
);
200 virtual void Modify( const SfxPoolItem
* pOld
, const SfxPoolItem
*pNew
) SAL_OVERRIDE
;
202 SwXStyle(SwDoc
* pDoc
, SfxStyleFamily eFam
= SFX_STYLE_FAMILY_PARA
, bool bConditional
= false);
203 SwXStyle(SfxStyleSheetBasePool
& rPool
, SfxStyleFamily eFam
,
205 const OUString
& rStyleName
);
211 static const ::com::sun::star::uno::Sequence
< sal_Int8
> & getUnoTunnelId();
214 virtual sal_Int64 SAL_CALL
getSomething( const ::com::sun::star::uno::Sequence
< sal_Int8
>& aIdentifier
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
217 virtual OUString SAL_CALL
getName() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
218 virtual void SAL_CALL
setName(const OUString
& Name_
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
221 virtual sal_Bool SAL_CALL
isUserDefined() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
222 virtual sal_Bool SAL_CALL
isInUse() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
223 virtual OUString SAL_CALL
getParentStyle() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
224 virtual void SAL_CALL
setParentStyle(const OUString
& aParentStyle
) throw( ::com::sun::star::container::NoSuchElementException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
227 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySetInfo
> SAL_CALL
getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
228 virtual void SAL_CALL
setPropertyValue( const 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
, std::exception
) SAL_OVERRIDE
;
229 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyValue( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
230 virtual void SAL_CALL
addPropertyChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
231 virtual void SAL_CALL
removePropertyChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
232 virtual void SAL_CALL
addVetoableChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
233 virtual void SAL_CALL
removeVetoableChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
236 virtual void SAL_CALL
setPropertyValues( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
>& aValues
) throw(::com::sun::star::beans::PropertyVetoException
, ::com::sun::star::lang::IllegalArgumentException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
237 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
getPropertyValues( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
238 virtual void SAL_CALL
addPropertiesChangeListener( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertiesChangeListener
>& xListener
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
239 virtual void SAL_CALL
removePropertiesChangeListener( const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertiesChangeListener
>& xListener
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
240 virtual void SAL_CALL
firePropertiesChangeEvent( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertiesChangeListener
>& xListener
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
243 virtual ::com::sun::star::beans::PropertyState SAL_CALL
getPropertyState( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
244 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyState
> SAL_CALL
getPropertyStates( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
245 virtual void SAL_CALL
setPropertyToDefault( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
246 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyDefault( const OUString
& aPropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
248 //XMultiPropertyStates
249 virtual void SAL_CALL
setAllPropertiesToDefault( ) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
250 virtual void SAL_CALL
setPropertiesToDefault( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
251 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
getPropertyDefaults( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
254 virtual OUString SAL_CALL
getImplementationName() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
255 virtual sal_Bool SAL_CALL
supportsService(const OUString
& ServiceName
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
256 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getSupportedServiceNames() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
259 virtual void Notify( SfxBroadcaster
& rBC
, const SfxHint
& rHint
) SAL_OVERRIDE
;
261 OUString
GetStyleName() const { return m_sStyleName
;}
262 SfxStyleFamily
GetFamily() const {return eFamily
;}
264 bool IsDescriptor() const {return bIsDescriptor
;}
265 bool IsConditional() const { return bIsConditional
;}
266 OUString
GetParentStyleName() const { return m_sParentStyleName
;}
267 void SetDoc(SwDoc
* pDc
, SfxStyleSheetBasePool
* pPool
)
269 bIsDescriptor
= false; m_pDoc
= pDc
;
271 StartListening(*pBasePool
);
273 SwDoc
* GetDoc() const { return m_pDoc
; }
276 class SwXFrameStyle
: public SwXStyle
,
277 public com::sun::star::document::XEventsSupplier
280 SwXFrameStyle(SfxStyleSheetBasePool
& rPool
,
282 const OUString
& rStyleName
) :
283 SwXStyle(rPool
, SFX_STYLE_FAMILY_FRAME
, pDoc
, rStyleName
){}
284 SwXFrameStyle( SwDoc
*pDoc
);
285 virtual ~SwXFrameStyle();
287 virtual void SAL_CALL
acquire( ) throw() SAL_OVERRIDE
{SwXStyle::acquire();}
288 virtual void SAL_CALL
release( ) throw() SAL_OVERRIDE
{SwXStyle::release();}
290 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Type
> SAL_CALL
getTypes( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
291 virtual ::com::sun::star::uno::Any SAL_CALL
queryInterface( const ::com::sun::star::uno::Type
& aType
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
293 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::container::XNameReplace
> SAL_CALL
getEvents( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
295 friend class SwFrameStyleEventDescriptor
;
298 class SwXPageStyle
: public SwXStyle
301 void SAL_CALL
SetPropertyValues_Impl( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
>& aValues
)
302 throw (::com::sun::star::beans::UnknownPropertyException
,
303 ::com::sun::star::beans::PropertyVetoException
,
304 ::com::sun::star::lang::IllegalArgumentException
,
305 ::com::sun::star::lang::WrappedTargetException
,
306 ::com::sun::star::uno::RuntimeException
,
308 ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
GetPropertyValues_Impl( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
);
311 SwXPageStyle(SfxStyleSheetBasePool
& rPool
, SwDocShell
* pDocSh
, SfxStyleFamily eFam
,
312 const OUString
& rStyleName
);
313 SwXPageStyle(SwDocShell
* pDocSh
);
314 virtual ~SwXPageStyle();
316 virtual void SAL_CALL
setPropertyValue( const 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
, std::exception
) SAL_OVERRIDE
;
317 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyValue( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
319 virtual void SAL_CALL
setPropertyValues( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
>& aValues
) throw(::com::sun::star::beans::PropertyVetoException
, ::com::sun::star::lang::IllegalArgumentException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
320 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
getPropertyValues( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
324 // access to all automatic style families
325 class SwXAutoStyles
:
326 public cppu::WeakImplHelper
< ::com::sun::star::style::XAutoStyles
>,
327 public SwUnoCollection
329 SwDocShell
*pDocShell
;
330 ::com::sun::star::uno::Reference
< ::com::sun::star::style::XAutoStyleFamily
> xAutoCharStyles
;
331 ::com::sun::star::uno::Reference
< ::com::sun::star::style::XAutoStyleFamily
> xAutoRubyStyles
;
332 ::com::sun::star::uno::Reference
< ::com::sun::star::style::XAutoStyleFamily
> xAutoParaStyles
;
333 ::com::sun::star::uno::Reference
< ::com::sun::star::style::XAutoStyleFamily
> xAutoNotxtStyles
;
334 virtual ~SwXAutoStyles();
337 SwXAutoStyles(SwDocShell
& rDocShell
);
340 virtual sal_Int32 SAL_CALL
getCount() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
341 virtual ::com::sun::star::uno::Any SAL_CALL
getByIndex(sal_Int32 nIndex
) throw( ::com::sun::star::lang::IndexOutOfBoundsException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
344 virtual ::com::sun::star::uno::Type SAL_CALL SAL_CALL
getElementType( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
345 virtual sal_Bool SAL_CALL SAL_CALL
hasElements( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
348 virtual ::com::sun::star::uno::Any SAL_CALL
getByName(const OUString
& Name
) throw( ::com::sun::star::container::NoSuchElementException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
349 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getElementNames() throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
350 virtual sal_Bool SAL_CALL
hasByName(const OUString
& Name
) throw( ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
354 // access to a family of automatic styles (character or paragraph or ...)
355 class SwXAutoStyleFamily
: public cppu::WeakImplHelper
< com::sun::star::style::XAutoStyleFamily
>,
358 SwDocShell
*pDocShell
;
359 IStyleAccess::SwAutoStyleFamily eFamily
;
362 virtual void Modify( const SfxPoolItem
* pOld
, const SfxPoolItem
*pNew
) SAL_OVERRIDE
;
365 SwXAutoStyleFamily(SwDocShell
* pDocShell
, IStyleAccess::SwAutoStyleFamily eFamily
);
366 virtual ~SwXAutoStyleFamily();
369 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::style::XAutoStyle
> SAL_CALL
insertStyle( const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& Values
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
372 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::container::XEnumeration
> SAL_CALL
createEnumeration( ) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
375 virtual ::com::sun::star::uno::Type SAL_CALL SAL_CALL
getElementType( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
376 virtual sal_Bool SAL_CALL SAL_CALL
hasElements( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
380 class SwXAutoStylesEnumerator
: public cppu::WeakImplHelper
< ::com::sun::star::container::XEnumeration
>,
383 SwAutoStylesEnumImpl
*pImpl
;
385 SwXAutoStylesEnumerator( SwDoc
* pDoc
, IStyleAccess::SwAutoStyleFamily eFam
);
386 virtual ~SwXAutoStylesEnumerator();
389 virtual sal_Bool SAL_CALL
hasMoreElements( ) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
390 virtual ::com::sun::star::uno::Any SAL_CALL
nextElement( ) throw (::com::sun::star::container::NoSuchElementException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
392 virtual void Modify( const SfxPoolItem
* pOld
, const SfxPoolItem
*pNew
) SAL_OVERRIDE
;
395 // an automatic style
396 class SwXAutoStyle
: public cppu::WeakImplHelper
398 ::com::sun::star::beans::XPropertySet
,
399 ::com::sun::star::beans::XPropertyState
,
400 ::com::sun::star::style::XAutoStyle
405 SfxItemSet_Pointer_t mpSet
;
406 IStyleAccess::SwAutoStyleFamily meFamily
;
409 ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
GetPropertyValues_Impl( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
);
413 SwXAutoStyle( SwDoc
* pDoc
, SfxItemSet_Pointer_t pInitSet
, IStyleAccess::SwAutoStyleFamily eFam
);
414 virtual ~SwXAutoStyle();
417 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySetInfo
> SAL_CALL
getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
418 virtual void SAL_CALL
setPropertyValue( const 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
, std::exception
) SAL_OVERRIDE
;
419 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyValue( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
420 virtual void SAL_CALL
addPropertyChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
421 virtual void SAL_CALL
removePropertyChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
422 virtual void SAL_CALL
addVetoableChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
423 virtual void SAL_CALL
removeVetoableChangeListener( const 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
, std::exception
) SAL_OVERRIDE
;
426 virtual void SAL_CALL
setPropertyValues( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
>& aValues
) throw (::com::sun::star::beans::PropertyVetoException
, ::com::sun::star::lang::IllegalArgumentException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
427 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
getPropertyValues( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
428 virtual void SAL_CALL
addPropertiesChangeListener( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertiesChangeListener
>& xListener
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
429 virtual void SAL_CALL
removePropertiesChangeListener( const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertiesChangeListener
>& xListener
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
430 virtual void SAL_CALL
firePropertiesChangeEvent( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertiesChangeListener
>& xListener
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
433 virtual ::com::sun::star::beans::PropertyState SAL_CALL
getPropertyState( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
434 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyState
> SAL_CALL
getPropertyStates( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
435 virtual void SAL_CALL
setPropertyToDefault( const OUString
& PropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
436 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyDefault( const OUString
& aPropertyName
) throw(::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
438 //XMultiPropertyStates
439 virtual void SAL_CALL
setAllPropertiesToDefault( ) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
440 virtual void SAL_CALL
setPropertiesToDefault( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
441 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> SAL_CALL
getPropertyDefaults( const ::com::sun::star::uno::Sequence
< OUString
>& aPropertyNames
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
444 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> SAL_CALL
getProperties() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
446 virtual void Modify( const SfxPoolItem
* pOld
, const SfxPoolItem
*pNew
) SAL_OVERRIDE
;
451 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */