1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski #ifndef _INC_COMMONEMBOBJ_HXX_ 25*b1cdbd2cSJim Jagielski #define _INC_COMMONEMBOBJ_HXX_ 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski #include <com/sun/star/uno/Sequence.hxx> 28*b1cdbd2cSJim Jagielski #include <com/sun/star/uno/Reference.hxx> 29*b1cdbd2cSJim Jagielski #include <com/sun/star/uno/Any.hxx> 30*b1cdbd2cSJim Jagielski #include <com/sun/star/container/XChild.hpp> 31*b1cdbd2cSJim Jagielski #include <com/sun/star/document/XStorageBasedDocument.hpp> 32*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XEmbeddedObject.hpp> 33*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XVisualObject.hpp> 34*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XEmbedPersist.hpp> 35*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XLinkageSupport.hpp> 36*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XClassifiedObject.hpp> 37*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XComponentSupplier.hpp> 38*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XInplaceObject.hpp> 39*b1cdbd2cSJim Jagielski #include <com/sun/star/embed/XStateChangeBroadcaster.hpp> 40*b1cdbd2cSJim Jagielski #include <com/sun/star/awt/XWindow.hpp> 41*b1cdbd2cSJim Jagielski #include <com/sun/star/awt/Rectangle.hpp> 42*b1cdbd2cSJim Jagielski #include <com/sun/star/document/XEventBroadcaster.hpp> 43*b1cdbd2cSJim Jagielski #include <com/sun/star/util/XCloseable.hpp> 44*b1cdbd2cSJim Jagielski #include <com/sun/star/chart2/XDefaultSizeTransmitter.hpp> 45*b1cdbd2cSJim Jagielski #include <cppuhelper/weak.hxx> 46*b1cdbd2cSJim Jagielski 47*b1cdbd2cSJim Jagielski namespace com { namespace sun { namespace star { 48*b1cdbd2cSJim Jagielski namespace embed { 49*b1cdbd2cSJim Jagielski class XStorage; 50*b1cdbd2cSJim Jagielski } 51*b1cdbd2cSJim Jagielski namespace frame { 52*b1cdbd2cSJim Jagielski class XModel; 53*b1cdbd2cSJim Jagielski class XFrame; 54*b1cdbd2cSJim Jagielski } 55*b1cdbd2cSJim Jagielski namespace lang { 56*b1cdbd2cSJim Jagielski class XMultiServiceFactory; 57*b1cdbd2cSJim Jagielski } 58*b1cdbd2cSJim Jagielski namespace util { 59*b1cdbd2cSJim Jagielski class XCloseListener; 60*b1cdbd2cSJim Jagielski } 61*b1cdbd2cSJim Jagielski namespace beans { 62*b1cdbd2cSJim Jagielski struct PropertyValue; 63*b1cdbd2cSJim Jagielski struct NamedValue; 64*b1cdbd2cSJim Jagielski } 65*b1cdbd2cSJim Jagielski }}} 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski namespace cppu { 68*b1cdbd2cSJim Jagielski class OMultiTypeInterfaceContainerHelper; 69*b1cdbd2cSJim Jagielski } 70*b1cdbd2cSJim Jagielski 71*b1cdbd2cSJim Jagielski namespace comphelper { 72*b1cdbd2cSJim Jagielski class NamedValueCollection; 73*b1cdbd2cSJim Jagielski } 74*b1cdbd2cSJim Jagielski 75*b1cdbd2cSJim Jagielski #define NUM_SUPPORTED_STATES 5 76*b1cdbd2cSJim Jagielski // #define NUM_SUPPORTED_VERBS 5 77*b1cdbd2cSJim Jagielski 78*b1cdbd2cSJim Jagielski #include "docholder.hxx" 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski class Interceptor; 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielski class OCommonEmbeddedObject : public ::com::sun::star::embed::XEmbeddedObject 83*b1cdbd2cSJim Jagielski , public ::com::sun::star::embed::XEmbedPersist 84*b1cdbd2cSJim Jagielski , public ::com::sun::star::embed::XLinkageSupport 85*b1cdbd2cSJim Jagielski , public ::com::sun::star::embed::XInplaceObject 86*b1cdbd2cSJim Jagielski , public ::com::sun::star::container::XChild 87*b1cdbd2cSJim Jagielski , public ::com::sun::star::chart2::XDefaultSizeTransmitter 88*b1cdbd2cSJim Jagielski , public ::cppu::OWeakObject 89*b1cdbd2cSJim Jagielski { 90*b1cdbd2cSJim Jagielski protected: 91*b1cdbd2cSJim Jagielski ::osl::Mutex m_aMutex; 92*b1cdbd2cSJim Jagielski 93*b1cdbd2cSJim Jagielski DocumentHolder* m_pDocHolder; 94*b1cdbd2cSJim Jagielski 95*b1cdbd2cSJim Jagielski ::cppu::OMultiTypeInterfaceContainerHelper* m_pInterfaceContainer; 96*b1cdbd2cSJim Jagielski 97*b1cdbd2cSJim Jagielski sal_Bool m_bReadOnly; 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielski sal_Bool m_bDisposed; 100*b1cdbd2cSJim Jagielski sal_Bool m_bClosed; 101*b1cdbd2cSJim Jagielski 102*b1cdbd2cSJim Jagielski sal_Int32 m_nObjectState; 103*b1cdbd2cSJim Jagielski sal_Int32 m_nTargetState; // should be -1 exept during state changing 104*b1cdbd2cSJim Jagielski sal_Int32 m_nUpdateMode; 105*b1cdbd2cSJim Jagielski 106*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xFactory; 107*b1cdbd2cSJim Jagielski 108*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aDocMediaDescriptor; 109*b1cdbd2cSJim Jagielski 110*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< sal_Int8 > m_aClassID; 111*b1cdbd2cSJim Jagielski ::rtl::OUString m_aClassName; 112*b1cdbd2cSJim Jagielski 113*b1cdbd2cSJim Jagielski ::rtl::OUString m_aDocServiceName; 114*b1cdbd2cSJim Jagielski ::rtl::OUString m_aPresetFilterName; 115*b1cdbd2cSJim Jagielski 116*b1cdbd2cSJim Jagielski sal_Int64 m_nMiscStatus; 117*b1cdbd2cSJim Jagielski 118*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< ::com::sun::star::embed::VerbDescriptor > m_aObjectVerbs; 119*b1cdbd2cSJim Jagielski 120*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< sal_Int32 > m_aAcceptedStates; 121*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< sal_Int32 > m_pIntermediateStatesSeqs[NUM_SUPPORTED_STATES][NUM_SUPPORTED_STATES]; 122*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< sal_Int32 > > m_aVerbTable; 123*b1cdbd2cSJim Jagielski 124*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedClient > m_xClientSite; 125*b1cdbd2cSJim Jagielski 126*b1cdbd2cSJim Jagielski ::rtl::OUString m_aContainerName; 127*b1cdbd2cSJim Jagielski ::rtl::OUString m_aDefaultParentBaseURL; 128*b1cdbd2cSJim Jagielski ::rtl::OUString m_aModuleName; 129*b1cdbd2cSJim Jagielski sal_Bool m_bEmbeddedScriptSupport; 130*b1cdbd2cSJim Jagielski sal_Bool m_bDocumentRecoverySupport; 131*b1cdbd2cSJim Jagielski 132*b1cdbd2cSJim Jagielski Interceptor* m_pInterceptor; 133*b1cdbd2cSJim Jagielski 134*b1cdbd2cSJim Jagielski // following information will be used between SaveAs and SaveCompleted 135*b1cdbd2cSJim Jagielski sal_Bool m_bWaitSaveCompleted; 136*b1cdbd2cSJim Jagielski ::rtl::OUString m_aNewEntryName; 137*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xNewParentStorage; 138*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xNewObjectStorage; 139*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aNewDocMediaDescriptor; 140*b1cdbd2cSJim Jagielski 141*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow > m_xClientWindow; // ??? 142*b1cdbd2cSJim Jagielski ::com::sun::star::awt::Rectangle m_aOwnRectangle; 143*b1cdbd2cSJim Jagielski ::com::sun::star::awt::Rectangle m_aClipRectangle; 144*b1cdbd2cSJim Jagielski 145*b1cdbd2cSJim Jagielski sal_Bool m_bIsLink; 146*b1cdbd2cSJim Jagielski 147*b1cdbd2cSJim Jagielski // embedded object related stuff 148*b1cdbd2cSJim Jagielski ::rtl::OUString m_aEntryName; 149*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xParentStorage; 150*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xObjectStorage; 151*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xRecoveryStorage; 152*b1cdbd2cSJim Jagielski 153*b1cdbd2cSJim Jagielski // link related stuff 154*b1cdbd2cSJim Jagielski ::rtl::OUString m_aLinkURL; 155*b1cdbd2cSJim Jagielski ::rtl::OUString m_aLinkFilterName; 156*b1cdbd2cSJim Jagielski sal_Bool m_bLinkHasPassword; 157*b1cdbd2cSJim Jagielski ::rtl::OUString m_aLinkPassword; 158*b1cdbd2cSJim Jagielski 159*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > m_xParent; 160*b1cdbd2cSJim Jagielski 161*b1cdbd2cSJim Jagielski sal_Bool m_bHasClonedSize; // the object has cached size 162*b1cdbd2cSJim Jagielski ::com::sun::star::awt::Size m_aClonedSize; 163*b1cdbd2cSJim Jagielski sal_Int32 m_nClonedMapUnit; 164*b1cdbd2cSJim Jagielski ::com::sun::star::awt::Size m_aDefaultSizeForChart_In_100TH_MM;//#i103460# charts do not necessaryly have an own size within ODF files, in this case they need to use the size settings from the surrounding frame, which is made available with this member 165*b1cdbd2cSJim Jagielski 166*b1cdbd2cSJim Jagielski private: 167*b1cdbd2cSJim Jagielski void CommonInit_Impl( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps ); 168*b1cdbd2cSJim Jagielski 169*b1cdbd2cSJim Jagielski void LinkInit_Impl( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps, 170*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMediaDescr, 171*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aObjectDescr ); 172*b1cdbd2cSJim Jagielski 173*b1cdbd2cSJim Jagielski 174*b1cdbd2cSJim Jagielski void SwitchOwnPersistence( 175*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xNewParentStorage, 176*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xNewObjectStorage, 177*b1cdbd2cSJim Jagielski const ::rtl::OUString& aNewName ); 178*b1cdbd2cSJim Jagielski 179*b1cdbd2cSJim Jagielski void SwitchOwnPersistence( 180*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xNewParentStorage, 181*b1cdbd2cSJim Jagielski const ::rtl::OUString& aNewName ); 182*b1cdbd2cSJim Jagielski GetDocumentServiceName() const183*b1cdbd2cSJim Jagielski ::rtl::OUString GetDocumentServiceName() const { return m_aDocServiceName; } GetPresetFilterName() const184*b1cdbd2cSJim Jagielski ::rtl::OUString GetPresetFilterName() const { return m_aPresetFilterName; } 185*b1cdbd2cSJim Jagielski 186*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > 187*b1cdbd2cSJim Jagielski StoreDocumentToTempStream_Impl( sal_Int32 nStorageFormat, 188*b1cdbd2cSJim Jagielski const ::rtl::OUString& aBaseURL, 189*b1cdbd2cSJim Jagielski const ::rtl::OUString& aHierarchName ); 190*b1cdbd2cSJim Jagielski 191*b1cdbd2cSJim Jagielski sal_Int32 ConvertVerbToState_Impl( sal_Int32 nVerb ); 192*b1cdbd2cSJim Jagielski 193*b1cdbd2cSJim Jagielski void Deactivate(); 194*b1cdbd2cSJim Jagielski 195*b1cdbd2cSJim Jagielski void StateChangeNotification_Impl( sal_Bool bBeforeChange, sal_Int32 nOldState, sal_Int32 nNewState,::osl::ResettableMutexGuard& _rGuard ); 196*b1cdbd2cSJim Jagielski 197*b1cdbd2cSJim Jagielski void SwitchStateTo_Impl( sal_Int32 nNextState ); 198*b1cdbd2cSJim Jagielski 199*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< sal_Int32 > GetIntermediateStatesSequence_Impl( sal_Int32 nNewState ); 200*b1cdbd2cSJim Jagielski 201*b1cdbd2cSJim Jagielski ::rtl::OUString GetFilterName( sal_Int32 nVersion ) const; 202*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > LoadDocumentFromStorage_Impl(); 203*b1cdbd2cSJim Jagielski 204*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > LoadLink_Impl(); 205*b1cdbd2cSJim Jagielski 206*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > InitNewDocument_Impl(); 207*b1cdbd2cSJim Jagielski 208*b1cdbd2cSJim Jagielski void StoreDocToStorage_Impl( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, 209*b1cdbd2cSJim Jagielski sal_Int32 nStorageVersion, 210*b1cdbd2cSJim Jagielski const ::rtl::OUString& aBaseURL, 211*b1cdbd2cSJim Jagielski const ::rtl::OUString& aHierarchName, 212*b1cdbd2cSJim Jagielski sal_Bool bAttachToStorage ); 213*b1cdbd2cSJim Jagielski 214*b1cdbd2cSJim Jagielski void SwitchDocToStorage_Impl( 215*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageBasedDocument >& xDoc, 216*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage ); 217*b1cdbd2cSJim Jagielski 218*b1cdbd2cSJim Jagielski void FillDefaultLoadArgs_Impl( 219*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& i_rxStorage, 220*b1cdbd2cSJim Jagielski ::comphelper::NamedValueCollection& o_rLoadArgs 221*b1cdbd2cSJim Jagielski ) const; 222*b1cdbd2cSJim Jagielski 223*b1cdbd2cSJim Jagielski void EmbedAndReparentDoc_Impl( 224*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable >& i_rxDocument 225*b1cdbd2cSJim Jagielski ) const; 226*b1cdbd2cSJim Jagielski 227*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > CreateDocFromMediaDescr_Impl( 228*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMedDescr ); 229*b1cdbd2cSJim Jagielski 230*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > CreateTempDocFromLink_Impl(); 231*b1cdbd2cSJim Jagielski 232*b1cdbd2cSJim Jagielski ::rtl::OUString GetBaseURL_Impl() const; 233*b1cdbd2cSJim Jagielski ::rtl::OUString GetBaseURLFrom_Impl( 234*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments, 235*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs ); 236*b1cdbd2cSJim Jagielski 237*b1cdbd2cSJim Jagielski public: 238*b1cdbd2cSJim Jagielski OCommonEmbeddedObject( 239*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory, 240*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps ); 241*b1cdbd2cSJim Jagielski 242*b1cdbd2cSJim Jagielski // no persistance for linked objects, so the descriptors are provided in constructor 243*b1cdbd2cSJim Jagielski OCommonEmbeddedObject( 244*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory, 245*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps, 246*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMediaDescr, 247*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aObjectDescr ); 248*b1cdbd2cSJim Jagielski 249*b1cdbd2cSJim Jagielski virtual ~OCommonEmbeddedObject(); 250*b1cdbd2cSJim Jagielski 251*b1cdbd2cSJim Jagielski void SaveObject_Impl(); 252*b1cdbd2cSJim Jagielski 253*b1cdbd2cSJim Jagielski void requestPositioning( const ::com::sun::star::awt::Rectangle& aRect ); 254*b1cdbd2cSJim Jagielski 255*b1cdbd2cSJim Jagielski // not a real listener and should not be 256*b1cdbd2cSJim Jagielski void PostEvent_Impl( const ::rtl::OUString& aEventName, 257*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& xSource = 258*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >() ); 259*b1cdbd2cSJim Jagielski 260*b1cdbd2cSJim Jagielski // XInterface 261*b1cdbd2cSJim Jagielski 262*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& rType ) 263*b1cdbd2cSJim Jagielski throw( ::com::sun::star::uno::RuntimeException ) ; 264*b1cdbd2cSJim Jagielski 265*b1cdbd2cSJim Jagielski virtual void SAL_CALL acquire() 266*b1cdbd2cSJim Jagielski throw(); 267*b1cdbd2cSJim Jagielski 268*b1cdbd2cSJim Jagielski virtual void SAL_CALL release() 269*b1cdbd2cSJim Jagielski throw(); 270*b1cdbd2cSJim Jagielski 271*b1cdbd2cSJim Jagielski // XTypeProvider 272*b1cdbd2cSJim Jagielski 273*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes() 274*b1cdbd2cSJim Jagielski throw( ::com::sun::star::uno::RuntimeException ) ; 275*b1cdbd2cSJim Jagielski 276*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() 277*b1cdbd2cSJim Jagielski throw( ::com::sun::star::uno::RuntimeException ) ; 278*b1cdbd2cSJim Jagielski 279*b1cdbd2cSJim Jagielski // XEmbeddedObject 280*b1cdbd2cSJim Jagielski 281*b1cdbd2cSJim Jagielski virtual void SAL_CALL changeState( sal_Int32 nNewState ) 282*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::UnreachableStateException, 283*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 284*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 285*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 286*b1cdbd2cSJim Jagielski 287*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL getReachableStates() 288*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 289*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 290*b1cdbd2cSJim Jagielski 291*b1cdbd2cSJim Jagielski virtual sal_Int32 SAL_CALL getCurrentState() 292*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 293*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 294*b1cdbd2cSJim Jagielski 295*b1cdbd2cSJim Jagielski virtual void SAL_CALL doVerb( sal_Int32 nVerbID ) 296*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 297*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 298*b1cdbd2cSJim Jagielski ::com::sun::star::embed::UnreachableStateException, 299*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 300*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 301*b1cdbd2cSJim Jagielski 302*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< ::com::sun::star::embed::VerbDescriptor > SAL_CALL getSupportedVerbs() 303*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 304*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 305*b1cdbd2cSJim Jagielski 306*b1cdbd2cSJim Jagielski virtual void SAL_CALL setClientSite( 307*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedClient >& xClient ) 308*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 309*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 310*b1cdbd2cSJim Jagielski 311*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::embed::XEmbeddedClient > SAL_CALL getClientSite() 312*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 313*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 314*b1cdbd2cSJim Jagielski 315*b1cdbd2cSJim Jagielski virtual void SAL_CALL update() 316*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 317*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 318*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 319*b1cdbd2cSJim Jagielski 320*b1cdbd2cSJim Jagielski virtual void SAL_CALL setUpdateMode( sal_Int32 nMode ) 321*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 322*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 323*b1cdbd2cSJim Jagielski 324*b1cdbd2cSJim Jagielski virtual sal_Int64 SAL_CALL getStatus( sal_Int64 nAspect ) 325*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 326*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 327*b1cdbd2cSJim Jagielski 328*b1cdbd2cSJim Jagielski virtual void SAL_CALL setContainerName( const ::rtl::OUString& sName ) 329*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 330*b1cdbd2cSJim Jagielski 331*b1cdbd2cSJim Jagielski 332*b1cdbd2cSJim Jagielski // XVisualObject 333*b1cdbd2cSJim Jagielski 334*b1cdbd2cSJim Jagielski virtual void SAL_CALL setVisualAreaSize( sal_Int64 nAspect, const ::com::sun::star::awt::Size& aSize ) 335*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 336*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 337*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 338*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 339*b1cdbd2cSJim Jagielski 340*b1cdbd2cSJim Jagielski virtual ::com::sun::star::awt::Size SAL_CALL getVisualAreaSize( sal_Int64 nAspect ) 341*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 342*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 343*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 344*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 345*b1cdbd2cSJim Jagielski 346*b1cdbd2cSJim Jagielski virtual ::com::sun::star::embed::VisualRepresentation SAL_CALL getPreferredVisualRepresentation( ::sal_Int64 nAspect ) 347*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 348*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 349*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 350*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 351*b1cdbd2cSJim Jagielski 352*b1cdbd2cSJim Jagielski virtual sal_Int32 SAL_CALL getMapUnit( sal_Int64 nAspect ) 353*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::Exception, 354*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException); 355*b1cdbd2cSJim Jagielski 356*b1cdbd2cSJim Jagielski // XEmbedPersist 357*b1cdbd2cSJim Jagielski 358*b1cdbd2cSJim Jagielski virtual void SAL_CALL setPersistentEntry( 359*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, 360*b1cdbd2cSJim Jagielski const ::rtl::OUString& sEntName, 361*b1cdbd2cSJim Jagielski sal_Int32 nEntryConnectionMode, 362*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments, 363*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs ) 364*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 365*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 366*b1cdbd2cSJim Jagielski ::com::sun::star::io::IOException, 367*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 368*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 369*b1cdbd2cSJim Jagielski 370*b1cdbd2cSJim Jagielski 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 ) 371*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 372*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 373*b1cdbd2cSJim Jagielski ::com::sun::star::io::IOException, 374*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 375*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 376*b1cdbd2cSJim Jagielski 377*b1cdbd2cSJim Jagielski virtual void SAL_CALL storeAsEntry( 378*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, 379*b1cdbd2cSJim Jagielski const ::rtl::OUString& sEntName, 380*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments, 381*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs ) 382*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 383*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 384*b1cdbd2cSJim Jagielski ::com::sun::star::io::IOException, 385*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 386*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 387*b1cdbd2cSJim Jagielski 388*b1cdbd2cSJim Jagielski virtual void SAL_CALL saveCompleted( sal_Bool bUseNew ) 389*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 390*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 391*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 392*b1cdbd2cSJim Jagielski 393*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL hasEntry() 394*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 395*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 396*b1cdbd2cSJim Jagielski 397*b1cdbd2cSJim Jagielski virtual ::rtl::OUString SAL_CALL getEntryName() 398*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 399*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 400*b1cdbd2cSJim Jagielski 401*b1cdbd2cSJim Jagielski // XLinkageSupport 402*b1cdbd2cSJim Jagielski 403*b1cdbd2cSJim Jagielski virtual void SAL_CALL breakLink( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, 404*b1cdbd2cSJim Jagielski const ::rtl::OUString& sEntName ) 405*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 406*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 407*b1cdbd2cSJim Jagielski ::com::sun::star::io::IOException, 408*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 409*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 410*b1cdbd2cSJim Jagielski 411*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL isLink() 412*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 413*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException); 414*b1cdbd2cSJim Jagielski 415*b1cdbd2cSJim Jagielski virtual ::rtl::OUString SAL_CALL getLinkURL() 416*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 417*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 418*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException); 419*b1cdbd2cSJim Jagielski 420*b1cdbd2cSJim Jagielski 421*b1cdbd2cSJim Jagielski // XCommonEmbedPersist 422*b1cdbd2cSJim Jagielski 423*b1cdbd2cSJim Jagielski virtual void SAL_CALL storeOwn() 424*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 425*b1cdbd2cSJim Jagielski ::com::sun::star::io::IOException, 426*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 427*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 428*b1cdbd2cSJim Jagielski 429*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL isReadonly() 430*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 431*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 432*b1cdbd2cSJim Jagielski 433*b1cdbd2cSJim Jagielski virtual void SAL_CALL reload( 434*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments, 435*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lObjArgs ) 436*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::IllegalArgumentException, 437*b1cdbd2cSJim Jagielski ::com::sun::star::embed::WrongStateException, 438*b1cdbd2cSJim Jagielski ::com::sun::star::io::IOException, 439*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 440*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 441*b1cdbd2cSJim Jagielski 442*b1cdbd2cSJim Jagielski 443*b1cdbd2cSJim Jagielski // XInplaceObject 444*b1cdbd2cSJim Jagielski 445*b1cdbd2cSJim Jagielski virtual void SAL_CALL setObjectRectangles( const ::com::sun::star::awt::Rectangle& aPosRect, 446*b1cdbd2cSJim Jagielski const ::com::sun::star::awt::Rectangle& aClipRect ) 447*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 448*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 449*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 450*b1cdbd2cSJim Jagielski 451*b1cdbd2cSJim Jagielski virtual void SAL_CALL enableModeless( sal_Bool bEnable ) 452*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 453*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Exception, 454*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 455*b1cdbd2cSJim Jagielski 456*b1cdbd2cSJim Jagielski virtual void SAL_CALL translateAccelerators( 457*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< ::com::sun::star::awt::KeyEvent >& aKeys ) 458*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::embed::WrongStateException, 459*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 460*b1cdbd2cSJim Jagielski 461*b1cdbd2cSJim Jagielski // XClassifiedObject 462*b1cdbd2cSJim Jagielski 463*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getClassID() 464*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 465*b1cdbd2cSJim Jagielski 466*b1cdbd2cSJim Jagielski virtual ::rtl::OUString SAL_CALL getClassName() 467*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 468*b1cdbd2cSJim Jagielski 469*b1cdbd2cSJim Jagielski virtual void SAL_CALL setClassInfo( 470*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Sequence< sal_Int8 >& aClassID, const ::rtl::OUString& aClassName ) 471*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::lang::NoSupportException, 472*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 473*b1cdbd2cSJim Jagielski 474*b1cdbd2cSJim Jagielski 475*b1cdbd2cSJim Jagielski // XComponentSupplier 476*b1cdbd2cSJim Jagielski 477*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseable > SAL_CALL getComponent() 478*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 479*b1cdbd2cSJim Jagielski 480*b1cdbd2cSJim Jagielski // XStateChangeBroadcaster 481*b1cdbd2cSJim Jagielski virtual void SAL_CALL addStateChangeListener( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStateChangeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException); 482*b1cdbd2cSJim Jagielski virtual void SAL_CALL removeStateChangeListener( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStateChangeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException); 483*b1cdbd2cSJim Jagielski 484*b1cdbd2cSJim Jagielski // XCloseable 485*b1cdbd2cSJim Jagielski 486*b1cdbd2cSJim Jagielski virtual void SAL_CALL close( sal_Bool DeliverOwnership ) 487*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::util::CloseVetoException, 488*b1cdbd2cSJim Jagielski ::com::sun::star::uno::RuntimeException ); 489*b1cdbd2cSJim Jagielski 490*b1cdbd2cSJim Jagielski virtual void SAL_CALL addCloseListener( 491*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseListener >& Listener ) 492*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 493*b1cdbd2cSJim Jagielski 494*b1cdbd2cSJim Jagielski virtual void SAL_CALL removeCloseListener( 495*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseListener >& Listener ) 496*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 497*b1cdbd2cSJim Jagielski 498*b1cdbd2cSJim Jagielski // XEventBroadcaster 499*b1cdbd2cSJim Jagielski virtual void SAL_CALL addEventListener( 500*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventListener >& Listener ) 501*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 502*b1cdbd2cSJim Jagielski 503*b1cdbd2cSJim Jagielski virtual void SAL_CALL removeEventListener( 504*b1cdbd2cSJim Jagielski const ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventListener >& Listener ) 505*b1cdbd2cSJim Jagielski throw ( ::com::sun::star::uno::RuntimeException ); 506*b1cdbd2cSJim Jagielski 507*b1cdbd2cSJim Jagielski // XChild 508*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent( ) throw (::com::sun::star::uno::RuntimeException); 509*b1cdbd2cSJim Jagielski 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); 510*b1cdbd2cSJim Jagielski 511*b1cdbd2cSJim Jagielski // XDefaultSizeTransmitter 512*b1cdbd2cSJim Jagielski //#i103460# charts do not necessaryly have an own size within ODF files, in this case they need to use the size settings from the surrounding frame, which is made available with this method 513*b1cdbd2cSJim Jagielski virtual void SAL_CALL setDefaultSize( const ::com::sun::star::awt::Size& rSize_100TH_MM ) throw (::com::sun::star::uno::RuntimeException); 514*b1cdbd2cSJim Jagielski }; 515*b1cdbd2cSJim Jagielski 516*b1cdbd2cSJim Jagielski #endif 517*b1cdbd2cSJim Jagielski 518