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