LibreOffice Module svx (master)
1
|
#include <xmleohlp.hxx>
Public Member Functions | |
SvXMLEmbeddedObjectHelper (::comphelper::IEmbeddedHelper &rDocPersist, SvXMLEmbeddedObjectHelperMode eCreateMode) | |
virtual OUString SAL_CALL | resolveEmbeddedObjectURL (const OUString &aURL) override |
virtual css::uno::Any SAL_CALL | getByName (const OUString &aName) override |
virtual css::uno::Sequence< OUString > SAL_CALL | getElementNames () override |
virtual sal_Bool SAL_CALL | hasByName (const OUString &aName) override |
virtual css::uno::Type SAL_CALL | getElementType () override |
virtual sal_Bool SAL_CALL | hasElements () override |
Static Public Member Functions | |
static rtl::Reference< SvXMLEmbeddedObjectHelper > | Create (const css::uno::Reference< css::embed::XStorage > &,::comphelper::IEmbeddedHelper &rDocPersist, SvXMLEmbeddedObjectHelperMode eCreateMode) |
static rtl::Reference< SvXMLEmbeddedObjectHelper > | Create (::comphelper::IEmbeddedHelper &rDocPersist, SvXMLEmbeddedObjectHelperMode eCreateMode) |
static void | splitObjectURL (const OUString &aURLNoPar, OUString &rContainerStorageName, OUString &rObjectStorageName) |
Private Member Functions | |
SVX_DLLPRIVATE bool | ImplGetStorageNames (const OUString &rURLStr, OUString &rContainerStorageName, OUString &rObjectStorageName, bool bInternalToExternal, bool *pGraphicRepl=nullptr, bool *pOasisFormat=nullptr) const |
SVX_DLLPRIVATE css::uno::Reference< css::embed::XStorage > const & | ImplGetContainerStorage (const OUString &rStorageName) |
SVX_DLLPRIVATE void | ImplReadObject (const OUString &rContainerStorageName, OUString &rObjName, const SvGlobalName *pClassId, SvStream *pTemp) |
SVX_DLLPRIVATE OUString | ImplInsertEmbeddedObjectURL (const OUString &rURLStr) |
SVX_DLLPRIVATE css::uno::Reference< css::io::XInputStream > | ImplGetReplacementImage (const css::uno::Reference< css::embed::XEmbeddedObject > &xObj) |
SvXMLEmbeddedObjectHelper () | |
virtual | ~SvXMLEmbeddedObjectHelper () override |
void | Init (const css::uno::Reference< css::embed::XStorage > &,::comphelper::IEmbeddedHelper &rDocPersist, SvXMLEmbeddedObjectHelperMode eCreateMode) |
virtual void SAL_CALL | disposing () override |
Private Attributes | |
::osl::Mutex | maMutex |
OUString | maCurContainerStorageName |
css::uno::Reference< css::embed::XStorage > | mxRootStorage |
::comphelper::IEmbeddedHelper * | mpDocPersist |
css::uno::Reference< css::embed::XStorage > | mxContainerStorage |
css::uno::Reference< css::embed::XStorage > | mxTempStorage |
SvXMLEmbeddedObjectHelperMode | meCreateMode |
std::unique_ptr< std::map< OUString, rtl::Reference< OutputStorageWrapper_Impl > > > | mpStreamMap |
Definition at line 46 of file xmleohlp.hxx.
|
private |
Definition at line 123 of file xmleohlp.cxx.
|
overrideprivatevirtual |
Definition at line 138 of file xmleohlp.cxx.
SvXMLEmbeddedObjectHelper::SvXMLEmbeddedObjectHelper | ( | ::comphelper::IEmbeddedHelper & | rDocPersist, |
SvXMLEmbeddedObjectHelperMode | eCreateMode | ||
) |
Definition at line 130 of file xmleohlp.cxx.
|
static |
Referenced by SvxDrawingLayerExport(), and SvxDrawingLayerImport().
|
static |
Definition at line 536 of file xmleohlp.cxx.
|
overrideprivatevirtual |
Definition at line 142 of file xmleohlp.cxx.
References mxTempStorage.
|
overridevirtual |
Definition at line 571 of file xmleohlp.cxx.
References Any, DBG_ASSERT, comphelper::EmbeddedObjectContainer::GetEmbeddedObject(), comphelper::IEmbeddedHelper::getEmbeddedObjectContainer(), comphelper::OStorageHelper::GetTemporaryStorage(), ImplGetReplacementImage(), ImplGetStorageNames(), maMutex, meCreateMode, mpDocPersist, mpStreamMap, mxTempStorage, Read, and xStream.
|
overridevirtual |
Definition at line 667 of file xmleohlp.cxx.
|
overridevirtual |
Definition at line 694 of file xmleohlp.cxx.
References cppu::UnoType< class >::get(), maMutex, meCreateMode, and Read.
|
overridevirtual |
Definition at line 672 of file xmleohlp.cxx.
References comphelper::IEmbeddedHelper::getEmbeddedObjectContainer(), comphelper::EmbeddedObjectContainer::HasEmbeddedObject(), ImplGetStorageNames(), maMutex, meCreateMode, mpDocPersist, and Read.
|
overridevirtual |
Definition at line 703 of file xmleohlp.cxx.
References comphelper::IEmbeddedHelper::getEmbeddedObjectContainer(), comphelper::EmbeddedObjectContainer::HasEmbeddedObjects(), maMutex, meCreateMode, mpDocPersist, and Read.
|
private |
Definition at line 301 of file xmleohlp.cxx.
References DBG_ASSERT, maCurContainerStorageName, meCreateMode, mxContainerStorage, mxRootStorage, and Write.
Referenced by ImplReadObject().
|
private |
Definition at line 470 of file xmleohlp.cxx.
References comphelper::IEmbeddedHelper::getEmbeddedObjectContainer(), svt::EmbeddedObjectRef::GetGraphicReplacementStream(), comphelper::EmbeddedObjectContainer::GetGraphicStream(), mpDocPersist, and xStream.
Referenced by getByName().
|
private |
Definition at line 192 of file xmleohlp.cxx.
References gaReplacementGraphicsContainerStorageName(), gaReplacementGraphicsContainerStorageName60(), SotStorage::GetVersion(), mxRootStorage, nPos, SAL_WARN, SOFFICE_FILEFORMAT_60, splitObjectURL(), XML_EMBEDDEDOBJECT_URL_BASE, and XML_EMBEDDEDOBJECTGRAPHIC_URL_BASE.
Referenced by getByName(), hasByName(), and ImplInsertEmbeddedObjectURL().
|
private |
Definition at line 417 of file xmleohlp.cxx.
References OutputStorageWrapper_Impl::GetStream(), ImplGetStorageNames(), ImplReadObject(), SvGlobalName::MakeId(), meCreateMode, mpStreamMap, nPos, pOut, Read, Write, and XML_EMBEDDEDOBJECT_URL_BASE.
Referenced by resolveEmbeddedObjectURL().
|
private |
Definition at line 337 of file xmleohlp.cxx.
References aName, utl::UcbStreamHelper::CreateStream(), comphelper::EmbeddedObjectContainer::CreateUniqueObjectName(), DBG_ASSERT, comphelper::IEmbeddedHelper::getDocumentBaseURL(), comphelper::EmbeddedObjectContainer::GetEmbeddedObject(), comphelper::IEmbeddedHelper::getEmbeddedObjectContainer(), comphelper::IEmbeddedHelper::getStorage(), comphelper::EmbeddedObjectContainer::HasInstantiatedEmbeddedObject(), ImplGetContainerStorage(), mpDocPersist, SvStream::ReadStream(), and SvStream::Seek().
Referenced by ImplInsertEmbeddedObjectURL().
|
private |
Definition at line 514 of file xmleohlp.cxx.
References meCreateMode, mpDocPersist, and mxRootStorage.
Referenced by SvXMLEmbeddedObjectHelper().
|
overridevirtual |
Definition at line 547 of file xmleohlp.cxx.
References Exception, cppu::getCaughtException(), ImplInsertEmbeddedObjectURL(), and maMutex.
|
static |
Definition at line 150 of file xmleohlp.cxx.
References _nPos, DBG_ASSERT, and nCount.
Referenced by ImplGetStorageNames(), and SvXMLGraphicHelper::ImplGetStreamNames().
|
private |
Definition at line 51 of file xmleohlp.hxx.
Referenced by ImplGetContainerStorage().
|
private |
Definition at line 49 of file xmleohlp.hxx.
Referenced by getByName(), getElementType(), hasByName(), hasElements(), and resolveEmbeddedObjectURL().
|
private |
Definition at line 59 of file xmleohlp.hxx.
Referenced by getByName(), getElementType(), hasByName(), hasElements(), ImplGetContainerStorage(), ImplInsertEmbeddedObjectURL(), and Init().
|
private |
Definition at line 55 of file xmleohlp.hxx.
Referenced by getByName(), hasByName(), hasElements(), ImplGetReplacementImage(), ImplReadObject(), and Init().
|
private |
Definition at line 61 of file xmleohlp.hxx.
Referenced by getByName(), and ImplInsertEmbeddedObjectURL().
|
private |
Definition at line 56 of file xmleohlp.hxx.
Referenced by ImplGetContainerStorage().
|
private |
Definition at line 54 of file xmleohlp.hxx.
Referenced by ImplGetContainerStorage(), ImplGetStorageNames(), and Init().
|
private |
Definition at line 57 of file xmleohlp.hxx.
Referenced by disposing(), and getByName().