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 _CHART_MODEL_HXX 24 #define _CHART_MODEL_HXX 25 26 #include "LifeTime.hxx" 27 #include "ServiceMacros.hxx" 28 29 #include <com/sun/star/frame/XModel.hpp> 30 #include <com/sun/star/frame/XStorable2.hpp> 31 #include <com/sun/star/util/XModifiable.hpp> 32 #include <com/sun/star/util/XCloseable.hpp> 33 #include <com/sun/star/document/XDocumentPropertiesSupplier.hpp> 34 #include <com/sun/star/document/XUndoManagerSupplier.hpp> 35 #include <com/sun/star/document/XFilter.hpp> 36 #include <com/sun/star/lang/XMultiServiceFactory.hpp> 37 #include <com/sun/star/lang/XServiceInfo.hpp> 38 #include <com/sun/star/lang/XInitialization.hpp> 39 #include <com/sun/star/uno/XComponentContext.hpp> 40 #include <com/sun/star/util/XCloneable.hpp> 41 #include <com/sun/star/embed/XVisualObject.hpp> 42 #include <com/sun/star/document/XStorageBasedDocument.hpp> 43 #include <com/sun/star/lang/XUnoTunnel.hpp> 44 #include <com/sun/star/util/XNumberFormatsSupplier.hpp> 45 #include <com/sun/star/container/XChild.hpp> 46 #include <com/sun/star/chart2/data/XDataSource.hpp> 47 #include <com/sun/star/chart2/XChartTypeTemplate.hpp> 48 #include <com/sun/star/container/XNameContainer.hpp> 49 50 // public API 51 #include <com/sun/star/chart2/data/XDataProvider.hpp> 52 #include <com/sun/star/chart2/data/XDataReceiver.hpp> 53 54 #include <com/sun/star/chart2/XChartDocument.hpp> 55 #include <com/sun/star/chart2/XTitled.hpp> 56 57 #include <com/sun/star/frame/XLoadable.hpp> 58 #include <com/sun/star/embed/XEmbeddedObject.hpp> 59 #include <com/sun/star/embed/XStorage.hpp> 60 #include <com/sun/star/datatransfer/XTransferable.hpp> 61 62 #if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_21) 63 #define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_21 64 #define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 21 65 #include "comphelper/implbase_var.hxx" 66 #endif 67 #include <osl/mutex.hxx> 68 #include <rtl/ref.hxx> 69 #include <cppuhelper/interfacecontainer.hxx> 70 #include <svtools/grfmgr.hxx> 71 72 // for auto_ptr 73 #include <memory> 74 75 class SvNumberFormatter; 76 77 //============================================================================= 78 79 namespace chart 80 { 81 82 namespace impl 83 { 84 85 // Note: needed for queryInterface (if it calls the base-class implementation) 86 typedef ::comphelper::WeakImplHelper21< 87 // ::com::sun::star::frame::XModel //comprehends XComponent (required interface), base of XChartDocument 88 ::com::sun::star::util::XCloseable //comprehends XCloseBroadcaster 89 ,::com::sun::star::frame::XStorable2 //(extension of XStorable) 90 // ,::com::sun::star::frame::XStorable //(required interface) base of XStorable2 91 ,::com::sun::star::util::XModifiable //comprehends XModifyBroadcaster (required interface) 92 // ,::com::sun::star::uno::XWeak // implemented by WeakImplHelper(optional interface) 93 // ,::com::sun::star::uno::XInterface // implemented by WeakImplHelper(optional interface) 94 // ,::com::sun::star::lang::XTypeProvider // implemented by WeakImplHelper 95 ,::com::sun::star::lang::XServiceInfo 96 ,::com::sun::star::lang::XInitialization 97 ,::com::sun::star::chart2::XChartDocument // derived from XModel 98 ,::com::sun::star::chart2::data::XDataReceiver // public API 99 ,::com::sun::star::chart2::XTitled 100 ,::com::sun::star::frame::XLoadable 101 ,::com::sun::star::util::XCloneable 102 ,::com::sun::star::embed::XVisualObject 103 ,::com::sun::star::lang::XMultiServiceFactory 104 ,::com::sun::star::document::XStorageBasedDocument 105 ,::com::sun::star::lang::XUnoTunnel 106 ,::com::sun::star::util::XNumberFormatsSupplier 107 ,::com::sun::star::container::XChild 108 ,::com::sun::star::util::XModifyListener 109 ,::com::sun::star::datatransfer::XTransferable 110 ,::com::sun::star::document::XDocumentPropertiesSupplier 111 ,::com::sun::star::chart2::data::XDataSource 112 ,::com::sun::star::document::XUndoManagerSupplier 113 > 114 ChartModel_Base; 115 } 116 117 class UndoManager; 118 119 class ChartModel : public impl::ChartModel_Base 120 { 121 122 private: 123 mutable ::apphelper::CloseableLifeTimeManager m_aLifeTimeManager; 124 125 mutable ::osl::Mutex m_aModelMutex; 126 sal_Bool volatile m_bReadOnly; 127 sal_Bool volatile m_bModified; 128 sal_Int32 m_nInLoad; 129 sal_Bool volatile m_bUpdateNotificationsPending; 130 131 ::rtl::OUString m_aResource; 132 ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aMediaDescriptor; 133 ::com::sun::star::uno::Reference< ::com::sun::star::document::XDocumentProperties > m_xDocumentProperties; 134 ::rtl::Reference< UndoManager > m_pUndoManager; 135 136 ::cppu::OInterfaceContainerHelper m_aControllers; 137 ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController > m_xCurrentController; 138 sal_uInt16 m_nControllerLockCount; 139 140 // ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aPrinterOptions; 141 142 ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext; 143 ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation > m_xOldModelAgg; 144 145 ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xStorage; 146 //the content of this should be always synchronized with the current m_xViewWindow size. The variable is necessary to hold the information as long as no view window exists. 147 ::com::sun::star::awt::Size m_aVisualAreaSize; 148 ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > m_xParent; 149 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XRangeHighlighter > m_xRangeHighlighter; 150 ::std::vector< GraphicObject > m_aGraphicObjectVector; 151 152 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > m_xDataProvider; 153 /** is only valid if m_xDataProvider is set. If m_xDataProvider is set to an 154 external data provider this reference must be set to 0 155 */ 156 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > m_xInternalDataProvider; 157 158 ::com::sun::star::uno::Reference< com::sun::star::util::XNumberFormatsSupplier > 159 m_xOwnNumberFormatsSupplier; 160 ::com::sun::star::uno::Reference< com::sun::star::util::XNumberFormatsSupplier > 161 m_xNumberFormatsSupplier; 162 std::auto_ptr< SvNumberFormatter > m_apSvNumberFormatter; // #i113784# avoid memory leak 163 164 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartTypeManager > 165 m_xChartTypeManager; 166 167 // Diagram Access 168 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XDiagram > 169 m_xDiagram; 170 171 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XTitle > 172 m_xTitle; 173 174 bool m_bIsDisposed; 175 ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > 176 m_xPageBackground; 177 178 ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess> m_xXMLNamespaceMap; 179 180 ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyListener; 181 182 private: 183 //private methods 184 185 ::rtl::OUString impl_g_getLocation(); 186 187 sal_Bool 188 impl_isControllerConnected( const com::sun::star::uno::Reference< 189 com::sun::star::frame::XController >& xController ); 190 191 com::sun::star::uno::Reference< com::sun::star::frame::XController > 192 impl_getCurrentController(); 193 194 void SAL_CALL 195 impl_notifyModifiedListeners(); 196 void SAL_CALL 197 impl_notifyCloseListeners(); 198 void SAL_CALL 199 impl_notifyStorageChangeListeners(); 200 201 void impl_killInternalData(); 202 203 void impl_store( 204 const ::com::sun::star::uno::Sequence< 205 ::com::sun::star::beans::PropertyValue >& rMediaDescriptor, 206 const ::com::sun::star::uno::Reference< 207 ::com::sun::star::embed::XStorage > & xStorage ); 208 void impl_load( 209 const ::com::sun::star::uno::Sequence< 210 ::com::sun::star::beans::PropertyValue >& rMediaDescriptor, 211 const ::com::sun::star::uno::Reference< 212 ::com::sun::star::embed::XStorage >& xStorage ); 213 void impl_loadGraphics( 214 const ::com::sun::star::uno::Reference< 215 ::com::sun::star::embed::XStorage >& xStorage ); 216 ::com::sun::star::uno::Reference< 217 ::com::sun::star::document::XFilter > 218 impl_createFilter( const ::com::sun::star::uno::Sequence< 219 ::com::sun::star::beans::PropertyValue > & rMediaDescriptor ); 220 221 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartTypeTemplate > impl_createDefaultChartTypeTemplate(); 222 ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataSource > impl_createDefaultData(); 223 224 void impl_adjustAdditionalShapesPositionAndSize( 225 const ::com::sun::star::awt::Size& aVisualAreaSize ); 226 227 ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier > 228 impl_getNumberFormatsSupplier(); 229 230 public: 231 //no default constructor 232 ChartModel(::com::sun::star::uno::Reference< 233 ::com::sun::star::uno::XComponentContext > const & xContext); 234 explicit ChartModel( const ChartModel & rOther ); 235 virtual ~ChartModel(); 236 237 //----------------------------------------------------------------- 238 // ::com::sun::star::lang::XServiceInfo 239 //----------------------------------------------------------------- 240 241 APPHELPER_XSERVICEINFO_DECL() 242 APPHELPER_SERVICE_FACTORY_HELPER(ChartModel) 243 244 //----------------------------------------------------------------- 245 // ::com::sun::star::lang::XInitialization 246 //----------------------------------------------------------------- 247 virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ); 248 249 //----------------------------------------------------------------- 250 // ::com::sun::star::frame::XModel (required interface) 251 //----------------------------------------------------------------- 252 253 virtual sal_Bool SAL_CALL 254 attachResource( const ::rtl::OUString& rURL 255 , const ::com::sun::star::uno::Sequence< 256 ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 257 258 virtual ::rtl::OUString SAL_CALL 259 getURL(); 260 261 virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL 262 getArgs(); 263 264 virtual void SAL_CALL 265 connectController( const ::com::sun::star::uno::Reference< 266 ::com::sun::star::frame::XController >& xController ); 267 268 virtual void SAL_CALL 269 disconnectController( const ::com::sun::star::uno::Reference< 270 ::com::sun::star::frame::XController >& xController ); 271 272 virtual void SAL_CALL 273 lockControllers(); 274 275 virtual void SAL_CALL 276 unlockControllers(); 277 278 virtual sal_Bool SAL_CALL 279 hasControllersLocked(); 280 281 virtual ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController > SAL_CALL 282 getCurrentController(); 283 284 virtual void SAL_CALL 285 setCurrentController( const ::com::sun::star::uno::Reference< 286 ::com::sun::star::frame::XController >& xController ); 287 288 virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL 289 getCurrentSelection(); 290 291 292 //----------------------------------------------------------------- 293 // ::com::sun::star::lang::XComponent (base of XModel) 294 //----------------------------------------------------------------- 295 virtual void SAL_CALL 296 dispose(); 297 298 virtual void SAL_CALL 299 addEventListener( const ::com::sun::star::uno::Reference< 300 ::com::sun::star::lang::XEventListener > & xListener ); 301 302 virtual void SAL_CALL 303 removeEventListener( const ::com::sun::star::uno::Reference< 304 ::com::sun::star::lang::XEventListener > & xListener ); 305 306 //----------------------------------------------------------------- 307 // ::com::sun::star::util::XCloseable 308 //----------------------------------------------------------------- 309 virtual void SAL_CALL 310 close( sal_Bool bDeliverOwnership ); 311 312 //----------------------------------------------------------------- 313 // ::com::sun::star::util::XCloseBroadcaster (base of XCloseable) 314 //----------------------------------------------------------------- 315 virtual void SAL_CALL 316 addCloseListener( const ::com::sun::star::uno::Reference< 317 ::com::sun::star::util::XCloseListener > & xListener ); 318 319 virtual void SAL_CALL 320 removeCloseListener( const ::com::sun::star::uno::Reference< 321 ::com::sun::star::util::XCloseListener > & xListener ); 322 323 //----------------------------------------------------------------- 324 // ::com::sun::star::frame::XStorable2 (extension of XStorable) 325 //----------------------------------------------------------------- 326 virtual void SAL_CALL storeSelf( 327 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 328 329 //----------------------------------------------------------------- 330 // ::com::sun::star::frame::XStorable (required interface) 331 //----------------------------------------------------------------- 332 virtual sal_Bool SAL_CALL 333 hasLocation(); 334 335 virtual ::rtl::OUString SAL_CALL 336 getLocation(); 337 338 virtual sal_Bool SAL_CALL 339 isReadonly(); 340 341 virtual void SAL_CALL 342 store(); 343 344 virtual void SAL_CALL 345 storeAsURL( const ::rtl::OUString& rURL 346 , const ::com::sun::star::uno::Sequence< 347 ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 348 349 virtual void SAL_CALL 350 storeToURL( const ::rtl::OUString& rURL 351 , const ::com::sun::star::uno::Sequence< 352 ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 353 354 //----------------------------------------------------------------- 355 // ::com::sun::star::util::XModifiable (required interface) 356 //----------------------------------------------------------------- 357 virtual sal_Bool SAL_CALL 358 isModified(); 359 360 virtual void SAL_CALL 361 setModified( sal_Bool bModified ); 362 363 //----------------------------------------------------------------- 364 // ::com::sun::star::util::XModifyBroadcaster (base of XModifiable) 365 //----------------------------------------------------------------- 366 virtual void SAL_CALL 367 addModifyListener( const ::com::sun::star::uno::Reference< 368 ::com::sun::star::util::XModifyListener >& xListener ); 369 370 virtual void SAL_CALL 371 removeModifyListener( const ::com::sun::star::uno::Reference< 372 ::com::sun::star::util::XModifyListener >& xListener ); 373 374 // ____ XModifyListener ____ 375 virtual void SAL_CALL modified( 376 const ::com::sun::star::lang::EventObject& aEvent ); 377 378 // ____ XEventListener (base of XModifyListener) ____ 379 virtual void SAL_CALL disposing( 380 const ::com::sun::star::lang::EventObject& Source ); 381 382 // ____ datatransferable::XTransferable ____ 383 virtual ::com::sun::star::uno::Any SAL_CALL getTransferData( 384 const ::com::sun::star::datatransfer::DataFlavor& aFlavor ); 385 virtual ::com::sun::star::uno::Sequence< ::com::sun::star::datatransfer::DataFlavor > SAL_CALL getTransferDataFlavors(); 386 virtual ::sal_Bool SAL_CALL isDataFlavorSupported( 387 const ::com::sun::star::datatransfer::DataFlavor& aFlavor ); 388 389 //----------------------------------------------------------------- 390 // lang::XTypeProvider (overloaded method of WeakImplHelper) 391 //----------------------------------------------------------------- 392 virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL 393 getTypes(); 394 395 // ____ document::XDocumentPropertiesSupplier ____ 396 virtual ::com::sun::star::uno::Reference< ::com::sun::star::document::XDocumentProperties > SAL_CALL 397 getDocumentProperties( ); 398 399 // ____ document::XUndoManagerSupplier ____ 400 virtual ::com::sun::star::uno::Reference< ::com::sun::star::document::XUndoManager > SAL_CALL 401 getUndoManager( ); 402 403 //----------------------------------------------------------------- 404 // ::com::sun::star::chart2::XChartDocument 405 //----------------------------------------------------------------- 406 virtual ::com::sun::star::uno::Reference< 407 ::com::sun::star::chart2::XDiagram > SAL_CALL 408 getFirstDiagram(); 409 virtual void SAL_CALL setFirstDiagram( 410 const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XDiagram >& xDiagram ); 411 virtual void SAL_CALL 412 createInternalDataProvider( sal_Bool bCloneExistingData ); 413 virtual ::sal_Bool SAL_CALL hasInternalDataProvider(); 414 virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > SAL_CALL 415 getDataProvider(); 416 virtual void SAL_CALL 417 setChartTypeManager( const ::com::sun::star::uno::Reference< 418 ::com::sun::star::chart2::XChartTypeManager >& xNewManager ); 419 virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartTypeManager > SAL_CALL 420 getChartTypeManager(); 421 virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL 422 getPageBackground(); 423 424 // ____ XDataReceiver (public API) ____ 425 virtual void SAL_CALL 426 attachDataProvider( const ::com::sun::star::uno::Reference< 427 ::com::sun::star::chart2::data::XDataProvider >& xProvider ); 428 virtual void SAL_CALL setArguments( 429 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aArguments ); 430 virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getUsedRangeRepresentations(); 431 virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataSource > SAL_CALL getUsedData(); 432 virtual void SAL_CALL attachNumberFormatsSupplier( const ::com::sun::star::uno::Reference< 433 ::com::sun::star::util::XNumberFormatsSupplier >& xSupplier ); 434 virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XRangeHighlighter > SAL_CALL getRangeHighlighter(); 435 436 // ____ XTitled ____ 437 virtual ::com::sun::star::uno::Reference< 438 ::com::sun::star::chart2::XTitle > SAL_CALL getTitleObject(); 439 virtual void SAL_CALL setTitleObject( const ::com::sun::star::uno::Reference< 440 ::com::sun::star::chart2::XTitle >& Title ); 441 442 // ____ XInterface (for old API wrapper) ____ 443 virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ); 444 445 // ____ XLoadable ____ 446 virtual void SAL_CALL initNew(); 447 virtual void SAL_CALL load( const ::com::sun::star::uno::Sequence< 448 ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 449 450 // ____ XCloneable ____ 451 virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone(); 452 453 // ____ XVisualObject ____ 454 virtual void SAL_CALL setVisualAreaSize( 455 ::sal_Int64 nAspect, 456 const ::com::sun::star::awt::Size& aSize ); 457 virtual ::com::sun::star::awt::Size SAL_CALL getVisualAreaSize( 458 ::sal_Int64 nAspect ); 459 virtual ::com::sun::star::embed::VisualRepresentation SAL_CALL getPreferredVisualRepresentation( 460 ::sal_Int64 nAspect ); 461 virtual ::sal_Int32 SAL_CALL getMapUnit( 462 ::sal_Int64 nAspect ); 463 464 // ____ XMultiServiceFactory ____ 465 virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL 466 createInstance( const ::rtl::OUString& aServiceSpecifier ); 467 virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL 468 createInstanceWithArguments( const ::rtl::OUString& ServiceSpecifier 469 , const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments ); 470 virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL 471 getAvailableServiceNames(); 472 473 // ____ XStorageBasedDocument ____ 474 virtual void SAL_CALL loadFromStorage( 475 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, 476 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 477 virtual void SAL_CALL storeToStorage( 478 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, 479 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rMediaDescriptor ); 480 virtual void SAL_CALL switchToStorage( 481 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage ); 482 virtual ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > SAL_CALL getDocumentStorage(); 483 virtual void SAL_CALL addStorageChangeListener( 484 const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageChangeListener >& xListener ); 485 virtual void SAL_CALL removeStorageChangeListener( 486 const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageChangeListener >& xListener ); 487 488 // for SvNumberFormatsSupplierObj 489 // ____ XUnoTunnel ___ 490 virtual ::sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& aIdentifier ); 491 492 // ____ XNumberFormatsSupplier ____ 493 virtual ::com::sun::star::uno::Reference< 494 ::com::sun::star::beans::XPropertySet > SAL_CALL getNumberFormatSettings(); 495 virtual ::com::sun::star::uno::Reference< 496 ::com::sun::star::util::XNumberFormats > SAL_CALL getNumberFormats(); 497 498 // ____ XChild ____ 499 virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent(); 500 virtual void SAL_CALL setParent( 501 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent ); 502 503 // ____ XDataSource ____ allows access to the currently used data and data ranges 504 virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XLabeledDataSequence > > SAL_CALL getDataSequences(); 505 }; 506 507 } // namespace chart 508 509 #endif 510