Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
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/.
8 : *
9 : * This file incorporates work covered by the following license notice:
10 : *
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 .
18 : */
19 : #ifndef INCLUDED_SD_SOURCE_UI_INC_UNOMODEL_HXX
20 : #define INCLUDED_SD_SOURCE_UI_INC_UNOMODEL_HXX
21 :
22 : #include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
23 : #include <com/sun/star/document/XLinkTargetSupplier.hpp>
24 : #include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
25 : #include <com/sun/star/drawing/XDrawPageSummarizer.hpp>
26 : #include <com/sun/star/drawing/XDrawPageDuplicator.hpp>
27 : #include <com/sun/star/drawing/XLayerSupplier.hpp>
28 : #include <com/sun/star/drawing/XMasterPagesSupplier.hpp>
29 : #include <com/sun/star/presentation/XPresentationSupplier.hpp>
30 : #include <com/sun/star/presentation/XCustomPresentationSupplier.hpp>
31 : #include <com/sun/star/drawing/XLayerManager.hpp>
32 : #include <com/sun/star/container/XNameContainer.hpp>
33 : #include <com/sun/star/presentation/XPresentation.hpp>
34 : #include <com/sun/star/lang/XServiceInfo.hpp>
35 : #include <com/sun/star/drawing/XDrawPages.hpp>
36 : #include <com/sun/star/ucb/XAnyCompareFactory.hpp>
37 : #include <com/sun/star/i18n/XForbiddenCharacters.hpp>
38 : #include <com/sun/star/presentation/XHandoutMasterSupplier.hpp>
39 : #include <com/sun/star/view/XRenderable.hpp>
40 : #include <com/sun/star/util/MeasureUnit.hpp>
41 :
42 : #include <rtl/ref.hxx>
43 :
44 : #include <svl/lstner.hxx>
45 : #include <sfx2/sfxbasemodel.hxx>
46 : #include <svx/fmdmod.hxx>
47 :
48 : #include <editeng/unoipset.hxx>
49 :
50 : #include <comphelper/servicehelper.hxx>
51 :
52 : class SdDrawDocument;
53 : class SdPage;
54 :
55 : namespace sd {
56 : class DrawDocShell;
57 : }
58 :
59 : extern OUString getPageApiName( SdPage* pPage );
60 : extern OUString getPageApiNameFromUiName( const OUString& rUIName );
61 :
62 : /***********************************************************************
63 : * *
64 : ***********************************************************************/
65 : class SdXImpressDocument : public SfxBaseModel, // implements SfxListener, OWEAKOBJECT & other
66 : public SvxFmMSFactory,
67 : public ::com::sun::star::drawing::XDrawPageDuplicator,
68 : public ::com::sun::star::drawing::XLayerSupplier,
69 : public ::com::sun::star::drawing::XMasterPagesSupplier,
70 : public ::com::sun::star::drawing::XDrawPagesSupplier,
71 : public ::com::sun::star::presentation::XPresentationSupplier,
72 : public ::com::sun::star::presentation::XCustomPresentationSupplier,
73 : public ::com::sun::star::document::XLinkTargetSupplier,
74 : public ::com::sun::star::beans::XPropertySet,
75 : public ::com::sun::star::style::XStyleFamiliesSupplier,
76 : public ::com::sun::star::lang::XServiceInfo,
77 : public ::com::sun::star::ucb::XAnyCompareFactory,
78 : public ::com::sun::star::presentation::XHandoutMasterSupplier,
79 : public ::com::sun::star::view::XRenderable
80 : {
81 : friend class SdDrawPagesAccess;
82 : friend class SdMasterPagesAccess;
83 : friend class SdLayerManager;
84 :
85 : private:
86 : ::sd::DrawDocShell* mpDocShell;
87 : SdDrawDocument* mpDoc;
88 : bool mbDisposed;
89 :
90 : css::uno::Reference<css::uno::XInterface> create(
91 : OUString const & aServiceSpecifier, OUString const & referer);
92 :
93 : SdPage* InsertSdPage( sal_uInt16 nPage, sal_Bool bDuplicate = sal_False ) throw();
94 :
95 : const sal_Bool mbImpressDoc;
96 : bool mbClipBoard;
97 :
98 : ::com::sun::star::uno::WeakReference< ::com::sun::star::drawing::XDrawPages > mxDrawPagesAccess;
99 : ::com::sun::star::uno::WeakReference< ::com::sun::star::drawing::XDrawPages > mxMasterPagesAccess;
100 : ::com::sun::star::uno::WeakReference< ::com::sun::star::container::XNameAccess > mxLayerManager;
101 : ::com::sun::star::uno::WeakReference< ::com::sun::star::container::XNameContainer > mxCustomPresentationAccess;
102 : ::com::sun::star::uno::WeakReference< ::com::sun::star::container::XNameAccess > mxStyleFamilies;
103 : ::com::sun::star::uno::WeakReference< ::com::sun::star::presentation::XPresentation > mxPresentation;
104 : ::com::sun::star::uno::WeakReference< ::com::sun::star::i18n::XForbiddenCharacters > mxForbidenCharacters;
105 : ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > mxLinks;
106 :
107 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxDashTable;
108 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxGradientTable;
109 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxHatchTable;
110 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxBitmapTable;
111 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxTransGradientTable;
112 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxMarkerTable;
113 : ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxDrawingPool;
114 :
115 : const SvxItemPropertySet* mpPropSet;
116 :
117 : ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > maTypeSequence;
118 :
119 : OUString maBuildId;
120 :
121 : void initializeDocument();
122 : public:
123 : SdXImpressDocument( ::sd::DrawDocShell* pShell, bool bClipBoard = false ) throw();
124 : SdXImpressDocument( SdDrawDocument* pDoc, bool bClipBoard = false ) throw();
125 : virtual ~SdXImpressDocument() throw();
126 :
127 : static rtl::Reference< SdXImpressDocument > GetModel( SdDrawDocument* pDoc );
128 :
129 : // intern
130 0 : virtual bool operator==( const SdXImpressDocument& rModel ) const { return mpDoc == rModel.mpDoc; }
131 0 : virtual bool operator!=( const SdXImpressDocument& rModel ) const { return mpDoc != rModel.mpDoc; }
132 :
133 0 : ::sd::DrawDocShell* GetDocShell() const { return mpDocShell; }
134 0 : SdDrawDocument* GetDoc() const { return mpDoc; }
135 0 : sal_Bool IsImpressDocument() const { return mbImpressDoc; }
136 :
137 : void SetModified( sal_Bool bModified = sal_True ) throw();
138 :
139 : ::com::sun::star::uno::Reference< ::com::sun::star::i18n::XForbiddenCharacters > getForbiddenCharsTable();
140 :
141 : // SfxListener
142 : virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
143 :
144 : UNO3_GETIMPLEMENTATION_DECL(SdXImpressDocument)
145 :
146 : // XInterface
147 : virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
148 : virtual void SAL_CALL acquire() throw() SAL_OVERRIDE;
149 : virtual void SAL_CALL release() throw() SAL_OVERRIDE;
150 :
151 : // XModel
152 : virtual void SAL_CALL lockControllers( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
153 : virtual void SAL_CALL unlockControllers( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
154 : virtual sal_Bool SAL_CALL hasControllersLocked( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
155 : virtual ::com::sun::star::uno::Reference < ::com::sun::star::container::XIndexAccess > SAL_CALL getViewData() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
156 : virtual void SAL_CALL setViewData( const ::com::sun::star::uno::Reference < ::com::sun::star::container::XIndexAccess >& aData ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
157 :
158 : // XTypeProvider
159 : virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
160 : virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
161 :
162 : // XDrawPageDuplicator
163 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > SAL_CALL duplicate( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
164 :
165 : // XDrawPagesSupplier
166 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPages > SAL_CALL getDrawPages( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
167 :
168 : // XMasterPagesSupplier
169 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPages > SAL_CALL getMasterPages( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
170 :
171 : // XLayerManagerSupplier
172 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getLayerManager( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
173 :
174 : // XCustomPresentationSupplier
175 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > SAL_CALL getCustomPresentations( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
176 :
177 : // XHandoutMasterSupplier
178 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > SAL_CALL getHandoutMasterPage( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
179 :
180 : // XPresentationSupplier
181 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::presentation::XPresentation > SAL_CALL getPresentation( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
182 :
183 : // XMultiServiceFactory ( SvxFmMSFactory )
184 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstance( const OUString& aServiceSpecifier ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
185 : virtual css::uno::Reference<css::uno::XInterface> SAL_CALL
186 : createInstanceWithArguments(
187 : OUString const & ServiceSpecifier,
188 : css::uno::Sequence<css::uno::Any> const & Arguments)
189 : throw (css::uno::Exception, css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
190 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getAvailableServiceNames( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
191 :
192 : // XServiceInfo
193 : virtual OUString SAL_CALL getImplementationName() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
194 : virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
195 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
196 :
197 : // XPropertySet
198 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
199 : 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;
200 : 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;
201 : 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;
202 : 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;
203 : 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;
204 : 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;
205 :
206 : // XLinkTargetSupplier
207 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getLinks( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
208 :
209 : // XStyleFamiliesSupplier
210 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getStyleFamilies( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
211 :
212 : // XAnyCompareFactory
213 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XAnyCompare > SAL_CALL createAnyCompareByName( const OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
214 :
215 : // XRenderable
216 : virtual sal_Int32 SAL_CALL getRendererCount( const ::com::sun::star::uno::Any& aSelection, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xOptions ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
217 : virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getRenderer( sal_Int32 nRenderer, const ::com::sun::star::uno::Any& aSelection, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xOptions ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
218 : virtual void SAL_CALL render( sal_Int32 nRenderer, const ::com::sun::star::uno::Any& aSelection, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xOptions ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
219 :
220 : // XComponent
221 :
222 : /** This dispose implementation releases the resources held by the
223 : called object and forwards the call to its base class.
224 : When close() has not yet been called then this is done first. As a
225 : consequence the implementation has to cope with being called twice
226 : and still has to forward the second call to the base class.
227 : See also comments of issue 27847.
228 : */
229 : virtual void SAL_CALL dispose() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
230 : };
231 :
232 : /***********************************************************************
233 : * *
234 : ***********************************************************************/
235 :
236 : #include <cppuhelper/implbase4.hxx>
237 :
238 : class SdDrawPagesAccess : public ::cppu::WeakImplHelper4< ::com::sun::star::drawing::XDrawPages, ::com::sun::star::container::XNameAccess, ::com::sun::star::lang::XServiceInfo, ::com::sun::star::lang::XComponent >
239 : {
240 : private:
241 : SdXImpressDocument* mpModel;
242 :
243 : public:
244 : SdDrawPagesAccess( SdXImpressDocument& rMyModel ) throw();
245 : virtual ~SdDrawPagesAccess() throw();
246 :
247 : // XDrawPages
248 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > SAL_CALL insertNewByIndex( sal_Int32 nIndex ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
249 : virtual void SAL_CALL remove( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
250 :
251 : // XNameAccess
252 : virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName ) throw(::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
253 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
254 : virtual sal_Bool SAL_CALL hasByName( const OUString& aName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
255 :
256 : // XIndexAccess
257 : virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE ;
258 : virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index ) throw(::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
259 :
260 : // XElementAccess
261 : virtual ::com::sun::star::uno::Type SAL_CALL getElementType() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
262 : virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
263 :
264 : // XServiceInfo
265 : virtual OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
266 : virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
267 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
268 :
269 : // XComponent
270 : virtual void SAL_CALL dispose( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
271 : virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
272 : virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
273 : };
274 :
275 : /***********************************************************************
276 : * *
277 : ***********************************************************************/
278 :
279 : #include <cppuhelper/implbase3.hxx>
280 :
281 : class SdMasterPagesAccess : public ::cppu::WeakImplHelper3< ::com::sun::star::drawing::XDrawPages, ::com::sun::star::lang::XServiceInfo, ::com::sun::star::lang::XComponent >
282 : {
283 : private:
284 : SdXImpressDocument* mpModel;
285 :
286 : public:
287 : SdMasterPagesAccess( SdXImpressDocument& rMyModel ) throw();
288 : virtual ~SdMasterPagesAccess() throw();
289 :
290 : // XDrawPages
291 : virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > SAL_CALL insertNewByIndex( sal_Int32 nIndex )
292 : throw (::com::sun::star::uno::RuntimeException,
293 : std::exception) SAL_OVERRIDE;
294 : virtual void SAL_CALL remove( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
295 :
296 : // XIndexAccess
297 : virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE ;
298 : virtual ::com::sun::star::uno::Any SAL_CALL getByIndex( sal_Int32 Index ) throw(::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
299 :
300 : // XElementAccess
301 : virtual ::com::sun::star::uno::Type SAL_CALL getElementType() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
302 : virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
303 :
304 : // XServiceInfo
305 : virtual OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
306 : virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
307 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
308 :
309 : // XComponent
310 : virtual void SAL_CALL dispose( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
311 : virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
312 : virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
313 : };
314 :
315 : /***********************************************************************
316 : * *
317 : ***********************************************************************/
318 :
319 : class SdDocLinkTargets : public ::cppu::WeakImplHelper3< ::com::sun::star::container::XNameAccess,
320 : ::com::sun::star::lang::XServiceInfo , ::com::sun::star::lang::XComponent >
321 : {
322 : private:
323 : SdXImpressDocument* mpModel;
324 :
325 : public:
326 : SdDocLinkTargets( SdXImpressDocument& rMyModel ) throw();
327 : virtual ~SdDocLinkTargets() throw();
328 :
329 : // XNameAccess
330 : virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName ) throw(::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
331 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
332 : virtual sal_Bool SAL_CALL hasByName( const OUString& aName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
333 :
334 : // XElementAccess
335 : virtual ::com::sun::star::uno::Type SAL_CALL getElementType() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
336 : virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
337 :
338 : // XServiceInfo
339 : virtual OUString SAL_CALL getImplementationName() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
340 : virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
341 : virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
342 :
343 : // XComponent
344 : virtual void SAL_CALL dispose( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
345 : virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
346 : virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
347 :
348 : // intern
349 : SdPage* FindPage( const OUString& rName ) const throw();
350 : };
351 :
352 : #endif
353 :
354 :
355 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|