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