update dev300-m58
[ooovba.git] / embeddedobj / source / inc / commonembobj.hxx
blob2f4c8dea7e35a13369cff8faca886c21bed3c93b
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: commonembobj.hxx,v $
10 * $Revision: 1.22 $
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 ************************************************************************/
31 #ifndef _INC_COMMONEMBOBJ_HXX_
32 #define _INC_COMMONEMBOBJ_HXX_
34 #include <com/sun/star/uno/Sequence.hxx>
35 #include <com/sun/star/uno/Reference.hxx>
36 #include <com/sun/star/uno/Any.hxx>
37 #include <com/sun/star/container/XChild.hpp>
38 #include <com/sun/star/embed/XEmbeddedObject.hpp>
39 #include <com/sun/star/embed/XVisualObject.hpp>
40 #include <com/sun/star/embed/XEmbedPersist.hpp>
41 #include <com/sun/star/embed/XLinkageSupport.hpp>
42 #include <com/sun/star/embed/XClassifiedObject.hpp>
43 #include <com/sun/star/embed/XComponentSupplier.hpp>
44 #include <com/sun/star/embed/XInplaceObject.hpp>
45 #include <com/sun/star/embed/XStateChangeBroadcaster.hpp>
46 #include <com/sun/star/awt/XWindow.hpp>
47 #include <com/sun/star/awt/Rectangle.hpp>
48 #include <com/sun/star/document/XEventBroadcaster.hpp>
49 #include <com/sun/star/util/XCloseable.hpp>
50 #include <cppuhelper/weak.hxx>
52 namespace com { namespace sun { namespace star {
53 namespace embed {
54 class XStorage;
56 namespace frame {
57 class XModel;
58 class XFrame;
60 namespace lang {
61 class XMultiServiceFactory;
63 namespace util {
64 class XCloseListener;
66 namespace beans {
67 struct PropertyValue;
68 struct NamedValue;
70 }}}
72 namespace cppu {
73 class OMultiTypeInterfaceContainerHelper;
76 #define NUM_SUPPORTED_STATES 5
77 // #define NUM_SUPPORTED_VERBS 5
79 #include "docholder.hxx"
81 class Interceptor;
83 class OCommonEmbeddedObject : public ::com::sun::star::embed::XEmbeddedObject
84 , public ::com::sun::star::embed::XEmbedPersist
85 , public ::com::sun::star::embed::XLinkageSupport
86 , public ::com::sun::star::embed::XInplaceObject
87 , public ::com::sun::star::container::XChild
88 , public ::cppu::OWeakObject
90 protected:
91 ::osl::Mutex m_aMutex;
93 DocumentHolder* m_pDocHolder;
95 ::cppu::OMultiTypeInterfaceContainerHelper* m_pInterfaceContainer;
97 sal_Bool m_bReadOnly;
99 sal_Bool m_bDisposed;
100 sal_Bool m_bClosed;
102 sal_Int32 m_nObjectState;
103 sal_Int32 m_nTargetState; // should be -1 exept during state changing
104 sal_Int32 m_nUpdateMode;
106 ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xFactory;
108 ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aDocMediaDescriptor;
110 ::com::sun::star::uno::Sequence< sal_Int8 > m_aClassID;
111 ::rtl::OUString m_aClassName;
113 ::rtl::OUString m_aDocServiceName;
114 ::rtl::OUString m_aPresetFilterName;
116 sal_Int64 m_nMiscStatus;
118 ::com::sun::star::uno::Sequence< ::com::sun::star::embed::VerbDescriptor > m_aObjectVerbs;
120 ::com::sun::star::uno::Sequence< sal_Int32 > m_aAcceptedStates;
121 ::com::sun::star::uno::Sequence< sal_Int32 > m_pIntermediateStatesSeqs[NUM_SUPPORTED_STATES][NUM_SUPPORTED_STATES];
122 ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< sal_Int32 > > m_aVerbTable;
124 ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedClient > m_xClientSite;
126 ::rtl::OUString m_aContainerName;
127 ::rtl::OUString m_aDefaultParentBaseURL;
128 ::rtl::OUString m_aModuleName;
129 sal_Bool m_bEmbeddedScriptSupport;
131 Interceptor* m_pInterceptor;
133 // following information will be used between SaveAs and SaveCompleted
134 sal_Bool m_bWaitSaveCompleted;
135 ::rtl::OUString m_aNewEntryName;
136 ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xNewParentStorage;
137 ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xNewObjectStorage;
138 ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aNewDocMediaDescriptor;
140 ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow > m_xClientWindow; // ???
141 ::com::sun::star::awt::Rectangle m_aOwnRectangle;
142 ::com::sun::star::awt::Rectangle m_aClipRectangle;
144 sal_Bool m_bIsLink;
146 // embedded object related stuff
147 ::rtl::OUString m_aEntryName;
148 ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xParentStorage;
149 ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xObjectStorage;
151 // link related stuff
152 ::rtl::OUString m_aLinkURL;
153 ::rtl::OUString m_aLinkFilterName;
154 sal_Bool m_bLinkHasPassword;
155 ::rtl::OUString m_aLinkPassword;
157 ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > m_xParent;
159 sal_Bool m_bHasClonedSize; // the object has cached size
160 ::com::sun::star::awt::Size m_aClonedSize;
161 sal_Int32 m_nClonedMapUnit;
163 private:
164 void CommonInit_Impl( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps );
166 void LinkInit_Impl( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps,
167 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMediaDescr,
168 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aObjectDescr );
171 void SwitchOwnPersistence(
172 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xNewParentStorage,
173 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xNewObjectStorage,
174 const ::rtl::OUString& aNewName );
176 void SwitchOwnPersistence(
177 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xNewParentStorage,
178 const ::rtl::OUString& aNewName );
180 ::rtl::OUString GetDocumentServiceName() { return m_aDocServiceName; }
181 ::rtl::OUString GetPresetFilterName() { return m_aPresetFilterName; }
183 ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >
184 StoreDocumentToTempStream_Impl( sal_Int32 nStorageFormat,
185 const ::rtl::OUString& aBaseURL,
186 const ::rtl::OUString& aHierarchName );
188 sal_Int32 ConvertVerbToState_Impl( sal_Int32 nVerb );
190 void Deactivate();
192 void StateChangeNotification_Impl( sal_Bool bBeforeChange, sal_Int32 nOldState, sal_Int32 nNewState,::osl::ResettableMutexGuard& _rGuard );
194 void SwitchStateTo_Impl( sal_Int32 nNextState );
196 ::com::sun::star::uno::Sequence< sal_Int32 > GetIntermediateStatesSequence_Impl( sal_Int32 nNewState );
198 ::rtl::OUString GetFilterName( sal_Int32 nVersion );
199 ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > LoadDocumentFromStorage_Impl(
200 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage );
202 ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > LoadLink_Impl();
204 ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > InitNewDocument_Impl();
206 void StoreDocToStorage_Impl( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
207 sal_Int32 nStorageVersion,
208 const ::rtl::OUString& aBaseURL,
209 const ::rtl::OUString& aHierarchName,
210 sal_Bool bAttachToStorage );
212 ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > CreateDocFromMediaDescr_Impl(
213 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMedDescr );
215 ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > CreateTempDocFromLink_Impl();
217 ::rtl::OUString GetBaseURL_Impl();
218 ::rtl::OUString GetBaseURLFrom_Impl(
219 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments,
220 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs );
222 public:
223 OCommonEmbeddedObject(
224 const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory,
225 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps );
227 // no persistance for linked objects, so the descriptors are provided in constructor
228 OCommonEmbeddedObject(
229 const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory,
230 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps,
231 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMediaDescr,
232 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aObjectDescr );
234 virtual ~OCommonEmbeddedObject();
236 void SaveObject_Impl();
238 void requestPositioning( const ::com::sun::star::awt::Rectangle& aRect );
240 // not a real listener and should not be
241 void PostEvent_Impl( const ::rtl::OUString& aEventName,
242 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& xSource =
243 ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >() );
245 // XInterface
247 virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& rType )
248 throw( ::com::sun::star::uno::RuntimeException ) ;
250 virtual void SAL_CALL acquire()
251 throw();
253 virtual void SAL_CALL release()
254 throw();
256 // XTypeProvider
258 virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
259 throw( ::com::sun::star::uno::RuntimeException ) ;
261 virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
262 throw( ::com::sun::star::uno::RuntimeException ) ;
264 // XEmbeddedObject
266 virtual void SAL_CALL changeState( sal_Int32 nNewState )
267 throw ( ::com::sun::star::embed::UnreachableStateException,
268 ::com::sun::star::embed::WrongStateException,
269 ::com::sun::star::uno::Exception,
270 ::com::sun::star::uno::RuntimeException );
272 virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL getReachableStates()
273 throw ( ::com::sun::star::embed::WrongStateException,
274 ::com::sun::star::uno::RuntimeException );
276 virtual sal_Int32 SAL_CALL getCurrentState()
277 throw ( ::com::sun::star::embed::WrongStateException,
278 ::com::sun::star::uno::RuntimeException );
280 virtual void SAL_CALL doVerb( sal_Int32 nVerbID )
281 throw ( ::com::sun::star::lang::IllegalArgumentException,
282 ::com::sun::star::embed::WrongStateException,
283 ::com::sun::star::embed::UnreachableStateException,
284 ::com::sun::star::uno::Exception,
285 ::com::sun::star::uno::RuntimeException );
287 virtual ::com::sun::star::uno::Sequence< ::com::sun::star::embed::VerbDescriptor > SAL_CALL getSupportedVerbs()
288 throw ( ::com::sun::star::embed::WrongStateException,
289 ::com::sun::star::uno::RuntimeException );
291 virtual void SAL_CALL setClientSite(
292 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedClient >& xClient )
293 throw ( ::com::sun::star::embed::WrongStateException,
294 ::com::sun::star::uno::RuntimeException );
296 virtual ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedClient > SAL_CALL getClientSite()
297 throw ( ::com::sun::star::embed::WrongStateException,
298 ::com::sun::star::uno::RuntimeException );
300 virtual void SAL_CALL update()
301 throw ( ::com::sun::star::embed::WrongStateException,
302 ::com::sun::star::uno::Exception,
303 ::com::sun::star::uno::RuntimeException );
305 virtual void SAL_CALL setUpdateMode( sal_Int32 nMode )
306 throw ( ::com::sun::star::embed::WrongStateException,
307 ::com::sun::star::uno::RuntimeException );
309 virtual sal_Int64 SAL_CALL getStatus( sal_Int64 nAspect )
310 throw ( ::com::sun::star::embed::WrongStateException,
311 ::com::sun::star::uno::RuntimeException );
313 virtual void SAL_CALL setContainerName( const ::rtl::OUString& sName )
314 throw ( ::com::sun::star::uno::RuntimeException );
317 // XVisualObject
319 virtual void SAL_CALL setVisualAreaSize( sal_Int64 nAspect, const ::com::sun::star::awt::Size& aSize )
320 throw ( ::com::sun::star::lang::IllegalArgumentException,
321 ::com::sun::star::embed::WrongStateException,
322 ::com::sun::star::uno::Exception,
323 ::com::sun::star::uno::RuntimeException );
325 virtual ::com::sun::star::awt::Size SAL_CALL getVisualAreaSize( sal_Int64 nAspect )
326 throw ( ::com::sun::star::lang::IllegalArgumentException,
327 ::com::sun::star::embed::WrongStateException,
328 ::com::sun::star::uno::Exception,
329 ::com::sun::star::uno::RuntimeException );
331 virtual ::com::sun::star::embed::VisualRepresentation SAL_CALL getPreferredVisualRepresentation( ::sal_Int64 nAspect )
332 throw ( ::com::sun::star::lang::IllegalArgumentException,
333 ::com::sun::star::embed::WrongStateException,
334 ::com::sun::star::uno::Exception,
335 ::com::sun::star::uno::RuntimeException );
337 virtual sal_Int32 SAL_CALL getMapUnit( sal_Int64 nAspect )
338 throw ( ::com::sun::star::uno::Exception,
339 ::com::sun::star::uno::RuntimeException);
341 // XEmbedPersist
343 virtual void SAL_CALL setPersistentEntry(
344 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
345 const ::rtl::OUString& sEntName,
346 sal_Int32 nEntryConnectionMode,
347 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments,
348 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs )
349 throw ( ::com::sun::star::lang::IllegalArgumentException,
350 ::com::sun::star::embed::WrongStateException,
351 ::com::sun::star::io::IOException,
352 ::com::sun::star::uno::Exception,
353 ::com::sun::star::uno::RuntimeException );
355 virtual void SAL_CALL storeToEntry( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, const ::rtl::OUString& sEntName, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs )
356 throw ( ::com::sun::star::lang::IllegalArgumentException,
357 ::com::sun::star::embed::WrongStateException,
358 ::com::sun::star::io::IOException,
359 ::com::sun::star::uno::Exception,
360 ::com::sun::star::uno::RuntimeException );
362 virtual void SAL_CALL storeAsEntry(
363 const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
364 const ::rtl::OUString& sEntName,
365 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments,
366 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs )
367 throw ( ::com::sun::star::lang::IllegalArgumentException,
368 ::com::sun::star::embed::WrongStateException,
369 ::com::sun::star::io::IOException,
370 ::com::sun::star::uno::Exception,
371 ::com::sun::star::uno::RuntimeException );
373 virtual void SAL_CALL saveCompleted( sal_Bool bUseNew )
374 throw ( ::com::sun::star::embed::WrongStateException,
375 ::com::sun::star::uno::Exception,
376 ::com::sun::star::uno::RuntimeException );
378 virtual sal_Bool SAL_CALL hasEntry()
379 throw ( ::com::sun::star::embed::WrongStateException,
380 ::com::sun::star::uno::RuntimeException );
382 virtual ::rtl::OUString SAL_CALL getEntryName()
383 throw ( ::com::sun::star::embed::WrongStateException,
384 ::com::sun::star::uno::RuntimeException );
386 // XLinkageSupport
388 virtual void SAL_CALL breakLink( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
389 const ::rtl::OUString& sEntName )
390 throw ( ::com::sun::star::lang::IllegalArgumentException,
391 ::com::sun::star::embed::WrongStateException,
392 ::com::sun::star::io::IOException,
393 ::com::sun::star::uno::Exception,
394 ::com::sun::star::uno::RuntimeException );
396 virtual sal_Bool SAL_CALL isLink()
397 throw ( ::com::sun::star::embed::WrongStateException,
398 ::com::sun::star::uno::RuntimeException);
400 virtual ::rtl::OUString SAL_CALL getLinkURL()
401 throw ( ::com::sun::star::embed::WrongStateException,
402 ::com::sun::star::uno::Exception,
403 ::com::sun::star::uno::RuntimeException);
406 // XCommonEmbedPersist
408 virtual void SAL_CALL storeOwn()
409 throw ( ::com::sun::star::embed::WrongStateException,
410 ::com::sun::star::io::IOException,
411 ::com::sun::star::uno::Exception,
412 ::com::sun::star::uno::RuntimeException );
414 virtual sal_Bool SAL_CALL isReadonly()
415 throw ( ::com::sun::star::embed::WrongStateException,
416 ::com::sun::star::uno::RuntimeException );
418 virtual void SAL_CALL reload(
419 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments,
420 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs )
421 throw ( ::com::sun::star::lang::IllegalArgumentException,
422 ::com::sun::star::embed::WrongStateException,
423 ::com::sun::star::io::IOException,
424 ::com::sun::star::uno::Exception,
425 ::com::sun::star::uno::RuntimeException );
428 // XInplaceObject
430 virtual void SAL_CALL setObjectRectangles( const ::com::sun::star::awt::Rectangle& aPosRect,
431 const ::com::sun::star::awt::Rectangle& aClipRect )
432 throw ( ::com::sun::star::embed::WrongStateException,
433 ::com::sun::star::uno::Exception,
434 ::com::sun::star::uno::RuntimeException );
436 virtual void SAL_CALL enableModeless( sal_Bool bEnable )
437 throw ( ::com::sun::star::embed::WrongStateException,
438 ::com::sun::star::uno::Exception,
439 ::com::sun::star::uno::RuntimeException );
441 virtual void SAL_CALL translateAccelerators(
442 const ::com::sun::star::uno::Sequence< ::com::sun::star::awt::KeyEvent >& aKeys )
443 throw ( ::com::sun::star::embed::WrongStateException,
444 ::com::sun::star::uno::RuntimeException );
446 // XClassifiedObject
448 virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getClassID()
449 throw ( ::com::sun::star::uno::RuntimeException );
451 virtual ::rtl::OUString SAL_CALL getClassName()
452 throw ( ::com::sun::star::uno::RuntimeException );
454 virtual void SAL_CALL setClassInfo(
455 const ::com::sun::star::uno::Sequence< sal_Int8 >& aClassID, const ::rtl::OUString& aClassName )
456 throw ( ::com::sun::star::lang::NoSupportException,
457 ::com::sun::star::uno::RuntimeException );
460 // XComponentSupplier
462 virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > SAL_CALL getComponent()
463 throw ( ::com::sun::star::uno::RuntimeException );
465 // XStateChangeBroadcaster
466 virtual void SAL_CALL addStateChangeListener( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStateChangeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
467 virtual void SAL_CALL removeStateChangeListener( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStateChangeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
469 // XCloseable
471 virtual void SAL_CALL close( sal_Bool DeliverOwnership )
472 throw ( ::com::sun::star::util::CloseVetoException,
473 ::com::sun::star::uno::RuntimeException );
475 virtual void SAL_CALL addCloseListener(
476 const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseListener >& Listener )
477 throw ( ::com::sun::star::uno::RuntimeException );
479 virtual void SAL_CALL removeCloseListener(
480 const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseListener >& Listener )
481 throw ( ::com::sun::star::uno::RuntimeException );
483 // XEventBroadcaster
484 virtual void SAL_CALL addEventListener(
485 const ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventListener >& Listener )
486 throw ( ::com::sun::star::uno::RuntimeException );
488 virtual void SAL_CALL removeEventListener(
489 const ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventListener >& Listener )
490 throw ( ::com::sun::star::uno::RuntimeException );
492 // XChild
493 virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent( ) throw (::com::sun::star::uno::RuntimeException);
494 virtual void SAL_CALL setParent( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent ) throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException);
497 #endif