1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: ChartModel.hxx,v $
10 * $Revision: 1.12.8.2 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef _CHART_MODEL_HXX
31 #define _CHART_MODEL_HXX
33 #include "LifeTime.hxx"
34 #include "ServiceMacros.hxx"
36 #include <com/sun/star/frame/XModel.hpp>
37 #include <com/sun/star/frame/XStorable2.hpp>
38 #include <com/sun/star/util/XModifiable.hpp>
39 #include <com/sun/star/util/XCloseable.hpp>
40 #include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
41 #include <com/sun/star/document/XFilter.hpp>
42 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
43 #include <com/sun/star/lang/XServiceInfo.hpp>
44 #include <com/sun/star/uno/XComponentContext.hpp>
45 #include <com/sun/star/util/XCloneable.hpp>
46 #include <com/sun/star/embed/XVisualObject.hpp>
47 #include <com/sun/star/document/XStorageBasedDocument.hpp>
48 #include <com/sun/star/lang/XUnoTunnel.hpp>
49 #include <com/sun/star/util/XNumberFormatsSupplier.hpp>
50 #include <com/sun/star/container/XChild.hpp>
51 #include <com/sun/star/chart2/XUndoSupplier.hpp>
52 #include <com/sun/star/chart2/data/XDataSource.hpp>
55 #include <com/sun/star/chart2/data/XDataProvider.hpp>
56 #include <com/sun/star/chart2/data/XDataReceiver.hpp>
58 #include <com/sun/star/chart2/XChartDocument.hpp>
59 #include <com/sun/star/chart2/XTitled.hpp>
61 #include <com/sun/star/frame/XLoadable.hpp>
62 #include <com/sun/star/embed/XEmbeddedObject.hpp>
63 #include <com/sun/star/embed/XStorage.hpp>
64 #include <com/sun/star/datatransfer/XTransferable.hpp>
66 #if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_20)
67 #define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_20
68 #define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 20
69 #include "comphelper/implbase_var.hxx"
71 #include <osl/mutex.hxx>
72 #include <cppuhelper/interfacecontainer.hxx>
73 #include <goodies/grfmgr.hxx>
78 //=============================================================================
79 /** this is an example implementation for the service ::com::sun::star::document::OfficeDocument
89 // Note: needed for queryInterface (if it calls the base-class implementation)
90 typedef ::comphelper::WeakImplHelper20
<
91 // ::com::sun::star::frame::XModel //comprehends XComponent (required interface), base of XChartDocument
92 ::com::sun::star::util::XCloseable
//comprehends XCloseBroadcaster
93 ,::com::sun::star::frame::XStorable2
//(extension of XStorable)
94 // ,::com::sun::star::frame::XStorable //(required interface) base of XStorable2
95 ,::com::sun::star::util::XModifiable
//comprehends XModifyBroadcaster (required interface)
96 // ,::com::sun::star::uno::XWeak // implemented by WeakImplHelper(optional interface)
97 // ,::com::sun::star::uno::XInterface // implemented by WeakImplHelper(optional interface)
98 // ,::com::sun::star::lang::XTypeProvider // implemented by WeakImplHelper
99 ,::com::sun::star::lang::XServiceInfo
100 ,::com::sun::star::chart2::XChartDocument
// derived from XModel
101 ,::com::sun::star::chart2::data::XDataReceiver
// public API
102 ,::com::sun::star::chart2::XTitled
103 ,::com::sun::star::frame::XLoadable
104 ,::com::sun::star::util::XCloneable
105 ,::com::sun::star::embed::XVisualObject
106 ,::com::sun::star::lang::XMultiServiceFactory
107 ,::com::sun::star::document::XStorageBasedDocument
108 ,::com::sun::star::lang::XUnoTunnel
109 ,::com::sun::star::util::XNumberFormatsSupplier
110 ,::com::sun::star::container::XChild
111 ,::com::sun::star::util::XModifyListener
112 ,::com::sun::star::datatransfer::XTransferable
113 ,::com::sun::star::chart2::XUndoSupplier
114 ,::com::sun::star::document::XDocumentPropertiesSupplier
115 ,::com::sun::star::chart2::data::XDataSource
120 class ChartModel
: public impl::ChartModel_Base
124 mutable ::apphelper::CloseableLifeTimeManager m_aLifeTimeManager
;
126 mutable ::osl::Mutex m_aModelMutex
;
127 sal_Bool
volatile m_bReadOnly
;
128 sal_Bool
volatile m_bModified
;
130 sal_Bool
volatile m_bUpdateNotificationsPending
;
132 ::rtl::OUString m_aResource
;
133 ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> m_aMediaDescriptor
;
134 ::com::sun::star::uno::Reference
< ::com::sun::star::document::XDocumentProperties
> m_xDocumentProperties
;
136 ::cppu::OInterfaceContainerHelper m_aControllers
;
137 ::com::sun::star::uno::Reference
< ::com::sun::star::frame::XController
> m_xCurrentController
;
138 sal_uInt16 m_nControllerLockCount
;
140 // ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aPrinterOptions;
142 ::std::auto_ptr
< impl::ImplChartModel
> m_pImplChartModel
;
144 ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XComponentContext
> m_xContext
;
145 ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XAggregation
> m_xOldModelAgg
;
147 ::com::sun::star::uno::Reference
< ::com::sun::star::embed::XStorage
> m_xStorage
;
148 //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.
149 ::com::sun::star::awt::Size m_aVisualAreaSize
;
150 ::com::sun::star::uno::Reference
< ::com::sun::star::frame::XModel
> m_xParent
;
151 ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XRangeHighlighter
> m_xRangeHighlighter
;
152 ::std::vector
< GraphicObject
> m_aGraphicObjectVector
;
157 ::rtl::OUString
impl_g_getLocation();
160 impl_isControllerConnected( const com::sun::star::uno::Reference
<
161 com::sun::star::frame::XController
>& xController
);
163 com::sun::star::uno::Reference
< com::sun::star::frame::XController
>
164 impl_getCurrentController()
165 throw( com::sun::star::uno::RuntimeException
);
168 impl_notifyModifiedListeners()
169 throw( com::sun::star::uno::RuntimeException
);
171 impl_notifyCloseListeners()
172 throw( com::sun::star::uno::RuntimeException
);
174 impl_notifyStorageChangeListeners()
175 throw(::com::sun::star::uno::RuntimeException
);
177 void impl_killInternalData() throw( com::sun::star::util::CloseVetoException
);
179 void impl_createOldModelAgg();
181 const ::com::sun::star::uno::Sequence
<
182 ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
,
183 const ::com::sun::star::uno::Reference
<
184 ::com::sun::star::embed::XStorage
> & xStorage
);
186 const ::com::sun::star::uno::Sequence
<
187 ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
,
188 const ::com::sun::star::uno::Reference
<
189 ::com::sun::star::embed::XStorage
>& xStorage
);
190 void impl_loadGraphics(
191 const ::com::sun::star::uno::Reference
<
192 ::com::sun::star::embed::XStorage
>& xStorage
);
193 ::com::sun::star::uno::Reference
<
194 ::com::sun::star::document::XFilter
>
195 impl_createFilter( const ::com::sun::star::uno::Sequence
<
196 ::com::sun::star::beans::PropertyValue
> & rMediaDescriptor
);
199 //no default constructor
200 ChartModel(::com::sun::star::uno::Reference
<
201 ::com::sun::star::uno::XComponentContext
> const & xContext
);
202 explicit ChartModel( const ChartModel
& rOther
);
203 virtual ~ChartModel();
205 //-----------------------------------------------------------------
206 // ::com::sun::star::lang::XServiceInfo
207 //-----------------------------------------------------------------
209 APPHELPER_XSERVICEINFO_DECL()
210 APPHELPER_SERVICE_FACTORY_HELPER(ChartModel
)
212 //-----------------------------------------------------------------
213 // ::com::sun::star::frame::XModel (required interface)
214 //-----------------------------------------------------------------
216 virtual sal_Bool SAL_CALL
217 attachResource( const ::rtl::OUString
& rURL
218 , const ::com::sun::star::uno::Sequence
<
219 ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
220 throw (::com::sun::star::uno::RuntimeException
);
222 virtual ::rtl::OUString SAL_CALL
223 getURL() throw (::com::sun::star::uno::RuntimeException
);
225 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> SAL_CALL
226 getArgs() throw (::com::sun::star::uno::RuntimeException
);
228 virtual void SAL_CALL
229 connectController( const ::com::sun::star::uno::Reference
<
230 ::com::sun::star::frame::XController
>& xController
)
231 throw (::com::sun::star::uno::RuntimeException
);
233 virtual void SAL_CALL
234 disconnectController( const ::com::sun::star::uno::Reference
<
235 ::com::sun::star::frame::XController
>& xController
)
236 throw (::com::sun::star::uno::RuntimeException
);
238 virtual void SAL_CALL
239 lockControllers() throw (::com::sun::star::uno::RuntimeException
);
241 virtual void SAL_CALL
242 unlockControllers() throw (::com::sun::star::uno::RuntimeException
);
244 virtual sal_Bool SAL_CALL
245 hasControllersLocked()
246 throw (::com::sun::star::uno::RuntimeException
);
248 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::frame::XController
> SAL_CALL
249 getCurrentController()
250 throw (::com::sun::star::uno::RuntimeException
);
252 virtual void SAL_CALL
253 setCurrentController( const ::com::sun::star::uno::Reference
<
254 ::com::sun::star::frame::XController
>& xController
)
255 throw (::com::sun::star::container::NoSuchElementException
256 , ::com::sun::star::uno::RuntimeException
);
258 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> SAL_CALL
259 getCurrentSelection()
260 throw (::com::sun::star::uno::RuntimeException
);
263 //-----------------------------------------------------------------
264 // ::com::sun::star::lang::XComponent (base of XModel)
265 //-----------------------------------------------------------------
266 virtual void SAL_CALL
267 dispose() throw (::com::sun::star::uno::RuntimeException
);
269 virtual void SAL_CALL
270 addEventListener( const ::com::sun::star::uno::Reference
<
271 ::com::sun::star::lang::XEventListener
> & xListener
)
272 throw (::com::sun::star::uno::RuntimeException
);
274 virtual void SAL_CALL
275 removeEventListener( const ::com::sun::star::uno::Reference
<
276 ::com::sun::star::lang::XEventListener
> & xListener
)
277 throw (::com::sun::star::uno::RuntimeException
);
279 //-----------------------------------------------------------------
280 // ::com::sun::star::util::XCloseable
281 //-----------------------------------------------------------------
282 virtual void SAL_CALL
283 close( sal_Bool bDeliverOwnership
)
284 throw(::com::sun::star::util::CloseVetoException
,
285 ::com::sun::star::uno::RuntimeException
);
287 //-----------------------------------------------------------------
288 // ::com::sun::star::util::XCloseBroadcaster (base of XCloseable)
289 //-----------------------------------------------------------------
290 virtual void SAL_CALL
291 addCloseListener( const ::com::sun::star::uno::Reference
<
292 ::com::sun::star::util::XCloseListener
> & xListener
)
293 throw (::com::sun::star::uno::RuntimeException
);
295 virtual void SAL_CALL
296 removeCloseListener( const ::com::sun::star::uno::Reference
<
297 ::com::sun::star::util::XCloseListener
> & xListener
)
298 throw (::com::sun::star::uno::RuntimeException
);
300 //-----------------------------------------------------------------
301 // ::com::sun::star::frame::XStorable2 (extension of XStorable)
302 //-----------------------------------------------------------------
303 virtual void SAL_CALL
storeSelf(
304 const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
305 throw (::com::sun::star::lang::IllegalArgumentException
,
306 ::com::sun::star::io::IOException
,
307 ::com::sun::star::uno::RuntimeException
);
309 //-----------------------------------------------------------------
310 // ::com::sun::star::frame::XStorable (required interface)
311 //-----------------------------------------------------------------
312 virtual sal_Bool SAL_CALL
313 hasLocation() throw (::com::sun::star::uno::RuntimeException
);
315 virtual ::rtl::OUString SAL_CALL
316 getLocation() throw (::com::sun::star::uno::RuntimeException
);
318 virtual sal_Bool SAL_CALL
319 isReadonly() throw (::com::sun::star::uno::RuntimeException
);
321 virtual void SAL_CALL
322 store() throw (::com::sun::star::io::IOException
323 , ::com::sun::star::uno::RuntimeException
);
325 virtual void SAL_CALL
326 storeAsURL( const ::rtl::OUString
& rURL
327 , const ::com::sun::star::uno::Sequence
<
328 ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
329 throw (::com::sun::star::io::IOException
330 , ::com::sun::star::uno::RuntimeException
);
332 virtual void SAL_CALL
333 storeToURL( const ::rtl::OUString
& rURL
334 , const ::com::sun::star::uno::Sequence
<
335 ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
336 throw (::com::sun::star::io::IOException
337 , ::com::sun::star::uno::RuntimeException
);
339 //-----------------------------------------------------------------
340 // ::com::sun::star::util::XModifiable (required interface)
341 //-----------------------------------------------------------------
342 virtual sal_Bool SAL_CALL
343 isModified() throw (::com::sun::star::uno::RuntimeException
);
345 virtual void SAL_CALL
346 setModified( sal_Bool bModified
)
347 throw (::com::sun::star::beans::PropertyVetoException
348 , ::com::sun::star::uno::RuntimeException
);
350 //-----------------------------------------------------------------
351 // ::com::sun::star::util::XModifyBroadcaster (base of XModifiable)
352 //-----------------------------------------------------------------
353 virtual void SAL_CALL
354 addModifyListener( const ::com::sun::star::uno::Reference
<
355 ::com::sun::star::util::XModifyListener
>& xListener
)
356 throw (::com::sun::star::uno::RuntimeException
);
358 virtual void SAL_CALL
359 removeModifyListener( const ::com::sun::star::uno::Reference
<
360 ::com::sun::star::util::XModifyListener
>& xListener
)
361 throw (::com::sun::star::uno::RuntimeException
);
363 // ____ XModifyListener ____
364 virtual void SAL_CALL
modified(
365 const ::com::sun::star::lang::EventObject
& aEvent
)
366 throw (::com::sun::star::uno::RuntimeException
);
368 // ____ XEventListener (base of XModifyListener) ____
369 virtual void SAL_CALL
disposing(
370 const ::com::sun::star::lang::EventObject
& Source
)
371 throw (::com::sun::star::uno::RuntimeException
);
373 // ____ datatransferable::XTransferable ____
374 virtual ::com::sun::star::uno::Any SAL_CALL
getTransferData(
375 const ::com::sun::star::datatransfer::DataFlavor
& aFlavor
)
376 throw (::com::sun::star::datatransfer::UnsupportedFlavorException
,
377 ::com::sun::star::io::IOException
,
378 ::com::sun::star::uno::RuntimeException
);
379 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::datatransfer::DataFlavor
> SAL_CALL
getTransferDataFlavors()
380 throw (::com::sun::star::uno::RuntimeException
);
381 virtual ::sal_Bool SAL_CALL
isDataFlavorSupported(
382 const ::com::sun::star::datatransfer::DataFlavor
& aFlavor
)
383 throw (::com::sun::star::uno::RuntimeException
);
385 //-----------------------------------------------------------------
386 // lang::XTypeProvider (overloaded method of WeakImplHelper)
387 //-----------------------------------------------------------------
388 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Type
> SAL_CALL
389 getTypes() throw (::com::sun::star::uno::RuntimeException
);
391 // ____ document::XDocumentPropertiesSupplier ____
392 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::document::XDocumentProperties
> SAL_CALL
393 getDocumentProperties( ) throw (::com::sun::star::uno::RuntimeException
);
395 //-----------------------------------------------------------------
396 // ::com::sun::star::chart2::XChartDocument
397 //-----------------------------------------------------------------
398 virtual ::com::sun::star::uno::Reference
<
399 ::com::sun::star::chart2::XDiagram
> SAL_CALL
400 getFirstDiagram() throw (::com::sun::star::uno::RuntimeException
);
401 virtual void SAL_CALL
setFirstDiagram(
402 const ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::XDiagram
>& xDiagram
)
403 throw (::com::sun::star::uno::RuntimeException
);
404 virtual void SAL_CALL
405 createInternalDataProvider( sal_Bool bCloneExistingData
)
406 throw (::com::sun::star::util::CloseVetoException
,
407 ::com::sun::star::uno::RuntimeException
);
408 virtual ::sal_Bool SAL_CALL
hasInternalDataProvider()
409 throw (::com::sun::star::uno::RuntimeException
);
410 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XDataProvider
> SAL_CALL
412 throw (::com::sun::star::uno::RuntimeException
);
413 virtual void SAL_CALL
414 setChartTypeManager( const ::com::sun::star::uno::Reference
<
415 ::com::sun::star::chart2::XChartTypeManager
>& xNewManager
)
416 throw (::com::sun::star::uno::RuntimeException
);
417 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::XChartTypeManager
> SAL_CALL
418 getChartTypeManager()
419 throw (::com::sun::star::uno::RuntimeException
);
420 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySet
> SAL_CALL
422 throw (::com::sun::star::uno::RuntimeException
);
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 throw (::com::sun::star::uno::RuntimeException
);
429 virtual void SAL_CALL
setArguments(
430 const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& aArguments
)
431 throw (::com::sun::star::lang::IllegalArgumentException
,
432 ::com::sun::star::uno::RuntimeException
);
433 virtual ::com::sun::star::uno::Sequence
< ::rtl::OUString
> SAL_CALL
getUsedRangeRepresentations()
434 throw (::com::sun::star::uno::RuntimeException
);
435 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XDataSource
> SAL_CALL
getUsedData()
436 throw (::com::sun::star::uno::RuntimeException
);
437 virtual void SAL_CALL
attachNumberFormatsSupplier( const ::com::sun::star::uno::Reference
<
438 ::com::sun::star::util::XNumberFormatsSupplier
>& xSupplier
)
439 throw (::com::sun::star::uno::RuntimeException
);
440 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XRangeHighlighter
> SAL_CALL
getRangeHighlighter()
441 throw (::com::sun::star::uno::RuntimeException
);
444 virtual ::com::sun::star::uno::Reference
<
445 ::com::sun::star::chart2::XTitle
> SAL_CALL
getTitleObject()
446 throw (::com::sun::star::uno::RuntimeException
);
447 virtual void SAL_CALL
setTitleObject( const ::com::sun::star::uno::Reference
<
448 ::com::sun::star::chart2::XTitle
>& Title
)
449 throw (::com::sun::star::uno::RuntimeException
);
451 // ____ XInterface (for old API wrapper) ____
452 virtual ::com::sun::star::uno::Any SAL_CALL
queryInterface( const ::com::sun::star::uno::Type
& aType
)
453 throw (::com::sun::star::uno::RuntimeException
);
455 // ____ XLoadable ____
456 virtual void SAL_CALL
initNew()
457 throw (::com::sun::star::frame::DoubleInitializationException
,
458 ::com::sun::star::io::IOException
,
459 ::com::sun::star::uno::Exception
,
460 ::com::sun::star::uno::RuntimeException
);
461 virtual void SAL_CALL
load( const ::com::sun::star::uno::Sequence
<
462 ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
463 throw (::com::sun::star::frame::DoubleInitializationException
,
464 ::com::sun::star::io::IOException
,
465 ::com::sun::star::uno::Exception
,
466 ::com::sun::star::uno::RuntimeException
);
468 // ____ XCloneable ____
469 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::util::XCloneable
> SAL_CALL
createClone()
470 throw (::com::sun::star::uno::RuntimeException
);
472 // ____ XVisualObject ____
473 virtual void SAL_CALL
setVisualAreaSize(
475 const ::com::sun::star::awt::Size
& aSize
)
476 throw (::com::sun::star::lang::IllegalArgumentException
,
477 ::com::sun::star::embed::WrongStateException
,
478 ::com::sun::star::uno::Exception
,
479 ::com::sun::star::uno::RuntimeException
);
480 virtual ::com::sun::star::awt::Size SAL_CALL
getVisualAreaSize(
481 ::sal_Int64 nAspect
)
482 throw (::com::sun::star::lang::IllegalArgumentException
,
483 ::com::sun::star::embed::WrongStateException
,
484 ::com::sun::star::uno::Exception
,
485 ::com::sun::star::uno::RuntimeException
);
486 virtual ::com::sun::star::embed::VisualRepresentation SAL_CALL
getPreferredVisualRepresentation(
487 ::sal_Int64 nAspect
)
488 throw (::com::sun::star::lang::IllegalArgumentException
,
489 ::com::sun::star::embed::WrongStateException
,
490 ::com::sun::star::uno::Exception
,
491 ::com::sun::star::uno::RuntimeException
);
492 virtual ::sal_Int32 SAL_CALL
getMapUnit(
493 ::sal_Int64 nAspect
)
494 throw (::com::sun::star::uno::Exception
,
495 ::com::sun::star::uno::RuntimeException
);
497 // ____ XMultiServiceFactory ____
498 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> SAL_CALL
499 createInstance( const ::rtl::OUString
& aServiceSpecifier
)
500 throw (::com::sun::star::uno::Exception
, ::com::sun::star::uno::RuntimeException
);
501 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> SAL_CALL
502 createInstanceWithArguments( const ::rtl::OUString
& ServiceSpecifier
503 , const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
>& Arguments
)
504 throw (::com::sun::star::uno::Exception
, ::com::sun::star::uno::RuntimeException
);
505 virtual ::com::sun::star::uno::Sequence
< ::rtl::OUString
> SAL_CALL
506 getAvailableServiceNames() throw (::com::sun::star::uno::RuntimeException
);
508 // ____ XStorageBasedDocument ____
509 virtual void SAL_CALL
loadFromStorage(
510 const ::com::sun::star::uno::Reference
< ::com::sun::star::embed::XStorage
>& xStorage
,
511 const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
512 throw (::com::sun::star::lang::IllegalArgumentException
,
513 ::com::sun::star::frame::DoubleInitializationException
,
514 ::com::sun::star::io::IOException
,
515 ::com::sun::star::uno::Exception
,
516 ::com::sun::star::uno::RuntimeException
);
517 virtual void SAL_CALL
storeToStorage(
518 const ::com::sun::star::uno::Reference
< ::com::sun::star::embed::XStorage
>& xStorage
,
519 const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
>& rMediaDescriptor
)
520 throw (::com::sun::star::lang::IllegalArgumentException
,
521 ::com::sun::star::io::IOException
,
522 ::com::sun::star::uno::Exception
,
523 ::com::sun::star::uno::RuntimeException
);
524 virtual void SAL_CALL
switchToStorage(
525 const ::com::sun::star::uno::Reference
< ::com::sun::star::embed::XStorage
>& xStorage
)
526 throw (::com::sun::star::lang::IllegalArgumentException
,
527 ::com::sun::star::io::IOException
,
528 ::com::sun::star::uno::Exception
,
529 ::com::sun::star::uno::RuntimeException
);
530 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::embed::XStorage
> SAL_CALL
getDocumentStorage()
531 throw (::com::sun::star::io::IOException
,
532 ::com::sun::star::uno::Exception
,
533 ::com::sun::star::uno::RuntimeException
);
534 virtual void SAL_CALL
addStorageChangeListener(
535 const ::com::sun::star::uno::Reference
< ::com::sun::star::document::XStorageChangeListener
>& xListener
)
536 throw (::com::sun::star::uno::RuntimeException
);
537 virtual void SAL_CALL
removeStorageChangeListener(
538 const ::com::sun::star::uno::Reference
< ::com::sun::star::document::XStorageChangeListener
>& xListener
)
539 throw (::com::sun::star::uno::RuntimeException
);
541 // for SvNumberFormatsSupplierObj
542 // ____ XUnoTunnel ___
543 virtual ::sal_Int64 SAL_CALL
getSomething( const ::com::sun::star::uno::Sequence
< ::sal_Int8
>& aIdentifier
)
544 throw (::com::sun::star::uno::RuntimeException
);
546 // ____ XNumberFormatsSupplier ____
547 virtual ::com::sun::star::uno::Reference
<
548 ::com::sun::star::beans::XPropertySet
> SAL_CALL
getNumberFormatSettings()
549 throw (::com::sun::star::uno::RuntimeException
);
550 virtual ::com::sun::star::uno::Reference
<
551 ::com::sun::star::util::XNumberFormats
> SAL_CALL
getNumberFormats()
552 throw (::com::sun::star::uno::RuntimeException
);
555 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> SAL_CALL
getParent()
556 throw (::com::sun::star::uno::RuntimeException
);
557 virtual void SAL_CALL
setParent(
558 const ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
>& Parent
)
559 throw (::com::sun::star::lang::NoSupportException
,
560 ::com::sun::star::uno::RuntimeException
);
562 // ____ XUndoSupplier ____
563 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::XUndoManager
> SAL_CALL
getUndoManager()
564 throw (::com::sun::star::uno::RuntimeException
);
566 // ____ XDataSource ____ allows access to the curently used data and data ranges
567 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XLabeledDataSequence
> > SAL_CALL
getDataSequences()
568 throw (::com::sun::star::uno::RuntimeException
);