25 #include <com/sun/star/embed/EmbeddedObjectCreator.hpp>
26 #include <com/sun/star/embed/OOoEmbeddedObjectFactory.hpp>
27 #include <com/sun/star/embed/XEmbeddedObject.hpp>
28 #include <com/sun/star/embed/Aspects.hpp>
29 #include <com/sun/star/frame/XModel.hpp>
30 #include <com/sun/star/task/XInteractionHandler.hpp>
32 #include <osl/diagnose.h>
33 #include <rtl/ustrbuf.hxx>
36 #include <com/sun/star/lang/XUnoTunnel.hpp>
87 sal_Int32 nHeight, sal_Int32 nWidth,
88 Size *pTwipSize =
nullptr )
90 if( nWidth > 0 && nHeight > 0 )
102 rItemSet.
Put( aAnchor );
106 pTwipSize->setWidth( nWidth );
107 pTwipSize->setHeight( nHeight);
113 const Size& aVisSize,
116 if( !(xObj.is() && nAspect != embed::Aspects::MSOLE_ICON) )
123 aSz.Width = aObjVisSize.Width();
124 aSz.Height = aObjVisSize.Height();
128 xObj->setVisualAreaSize( nAspect, aSz );
130 catch( uno::Exception& )
132 OSL_FAIL(
"Couldn't set visual area of the object!" );
137 const uno::Reference < XModel>& rModel,
139 const uno::Reference<XPropertySet> & rInfoSet,
140 bool bInsertM,
bool bStylesOnlyM,
141 bool bBlockM,
bool bOrganizerM ) :
143 bBlockM, bOrganizerM ),
144 m_pRedlineHelper( nullptr )
146 uno::Reference<XPropertySet> xDocPropSet( rModel, UNO_QUERY );
148 bInsertM || bBlockM, xDocPropSet, rInfoSet );
168 const uno::Reference< XFastAttributeList > & xAttrList )
175 uno::Reference<XUnoTunnel> xCursorTunnel(
176 const_cast<SwXMLTextImportHelper *>(
this)->
GetCursor(), UNO_QUERY );
177 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for Cursor");
178 OTextCursorHelper* pTextCursor = comphelper::getFromUnoTunnel<OTextCursorHelper>(xCursorTunnel);
179 SAL_WARN_IF(!pTextCursor,
"sw.uno",
"SwXTextCursor missing");
180 SwDoc *pDoc = pTextCursor ? pTextCursor->GetDoc() :
nullptr;
182 return pDoc && pDoc->
IsInHeaderFooter( pTextCursor->GetPaM()->GetPoint()->nNode );
194 OSL_ENSURE( pOLENd,
"Where is the OLE node" );
200 const OUString& rHRef,
201 const OUString& rStyleName,
202 const OUString& rTableName,
203 sal_Int32 nWidth, sal_Int32 nHeight )
208 uno::Reference < XPropertySet > xPropSet;
210 sal_Int32
nPos = rHRef.indexOf(
':' );
214 OUString aObjName( rHRef.copy( nPos+1) );
216 if( aObjName.isEmpty() )
219 uno::Reference<XUnoTunnel> xCursorTunnel(
GetCursor(), UNO_QUERY );
220 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for Cursor");
221 OTextCursorHelper* pTextCursor = comphelper::getFromUnoTunnel<OTextCursorHelper>(xCursorTunnel);
222 SAL_WARN_IF(!pTextCursor,
"sw.uno",
"SwXTextCursor missing");
226 Size aTwipSize( 0, 0 );
233 if( rHRef.startsWith(
"vnd.sun.star.ServiceName:") )
235 bool bInsert =
false;
237 for (
const auto& [sFilterService, rCLASSID] :
aServiceMap)
239 if (aObjName == sFilterService)
258 uno::Reference < embed::XEmbeddedObject > xObj( xFactory->createInstanceInitNew(
259 aClass, OUString(), xStorage,
"DummyName", aObjArgs), uno::UNO_QUERY );
269 *pTextCursor->GetPaM(),
278 catch ( uno::Exception& )
288 for(
SwContentNode* pNd = aIter.First(); pNd; pNd = aIter.Next() )
294 if ( aExistingName == aObjName )
296 OSL_FAIL(
"The document contains duplicate object references, means it is partially broken, please let developers know how this document was generated!" );
306 catch ( uno::Exception& )
308 OSL_FAIL(
"Couldn't create a copy of the object!" );
316 if ( aName.isEmpty() )
341 *pDoc, pFrameFormat), uno::UNO_QUERY);
347 if( !rTableName.isEmpty() )
352 OSL_ENSURE( pOLENode,
"Where is the OLE node" );
354 OUStringBuffer
aBuffer( rTableName.getLength() );
355 bool bQuoted =
false;
356 bool bEscape =
false;
358 for( sal_Int32
i=0;
i < rTableName.getLength();
i++ )
360 bool bEndOfNameFound =
false;
372 bEndOfNameFound =
true;
398 bEndOfNameFound =
true;
413 if( bError || bEndOfNameFound )
418 OUString sTableName(
aBuffer.makeStringAndClear() );
423 sal_Int64 nDrawAspect = 0;
425 bool bHasSizeProps =
false;
426 if( !rStyleName.isEmpty() )
434 OSL_ENSURE( xImpPrMap.is(),
"Where is the import prop mapper?" );
438 xImpPrMap->getPropertySetMapper();
441 for( sal_Int32
i=0;
i < nCount;
i++ )
444 sal_Int32 nIdx = rProp.
mnIndex;
448 switch( rPropMapper->GetEntryContextId(nIdx) )
469 bHasSizeProps =
true;
477 bHasSizeProps =
true;
485 nDrawAspect = embed::Aspects::MSOLE_CONTENT;
499 uno::Reference < embed::XEmbeddedObject > xObj =
503 aVisArea.
GetSize(), MapUnit::Map100thMM );
511 const OUString& rHRef,
514 sal_Int32 nWidth, sal_Int32 nHeight )
519 uno::Reference < XPropertySet > xPropSet;
521 uno::Reference<XUnoTunnel> xCursorTunnel(
GetCursor(), UNO_QUERY );
522 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for Cursor");
523 OTextCursorHelper* pTextCursor = comphelper::getFromUnoTunnel<OTextCursorHelper>(xCursorTunnel);
524 OSL_ENSURE( pTextCursor,
"SwXTextCursor missing" );
528 Size aTwipSize( 0, 0 );
535 bool bValidURL = !rHRef.isEmpty() &&
545 uno::Reference < embed::XEmbeddedObjectCreator >
xFactory =
553 uno::Reference< task::XInteractionHandler > xInteraction = pMedium->GetInteractionHandler();
554 if ( xInteraction.is() )
556 aMediaDescriptor.realloc( 2 );
557 auto pMediaDescriptor = aMediaDescriptor.getArray();
558 pMediaDescriptor[1].Name =
"InteractionHandler";
559 pMediaDescriptor[1].Value <<= xInteraction;
562 const auto nLen = aMediaDescriptor.getLength() + 1;
563 aMediaDescriptor.realloc(nLen);
564 auto pMediaDescriptor = aMediaDescriptor.getArray();
565 pMediaDescriptor[nLen - 1].Name =
"Referer";
566 pMediaDescriptor[nLen - 1].Value <<= pMedium->GetName();
569 uno::Reference < embed::XEmbeddedObject > xObj(
570 xFactory->createInstanceLink(
571 xStorage,
"DummyName", aMediaDescriptor, uno::Sequence< beans::PropertyValue >() ),
572 uno::UNO_QUERY_THROW );
577 *pTextCursor->GetPaM(),
584 *pDoc, pFrameFormat), uno::UNO_QUERY);
588 static_cast<SwFlyFrameFormat*>(pFrameFormat));
592 catch ( uno::Exception& )
602 const OUString &rName,
603 const OUString &rCode,
605 const OUString& rHRef,
606 sal_Int32 nWidth, sal_Int32 nHeight )
611 uno::Reference < XPropertySet > xPropSet;
612 uno::Reference<XUnoTunnel> xCursorTunnel(
GetCursor(), UNO_QUERY );
613 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for Cursor");
614 OTextCursorHelper* pTextCursor = comphelper::getFromUnoTunnel<OTextCursorHelper>(xCursorTunnel);
615 OSL_ENSURE( pTextCursor,
"SwXTextCursor missing" );
616 SwDoc *pDoc = pTextCursor->GetDoc();
624 if( !rHRef.isEmpty() )
631 embed::Aspects::MSOLE_CONTENT,
632 Size( nWidth, nHeight ),
633 MapUnit::Map100thMM );
640 *pDoc, pFrameFormat), uno::UNO_QUERY);
651 const OUString &rMimeType,
652 const OUString& rHRef,
653 sal_Int32 nWidth, sal_Int32 nHeight )
655 uno::Reference < XPropertySet > xPropSet;
656 uno::Reference<XUnoTunnel> xCursorTunnel(
GetCursor(), UNO_QUERY );
657 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for Cursor");
658 OTextCursorHelper* pTextCursor = comphelper::getFromUnoTunnel<OTextCursorHelper>(xCursorTunnel);
659 OSL_ENSURE( pTextCursor,
"SwXTextCursor missing" );
660 SwDoc *pDoc = pTextCursor->GetDoc();
670 bool bValidURL = !rHRef.isEmpty() &&
672 bool bValidMimeType = !rMimeType.isEmpty();
673 if( !bValidURL && !bValidMimeType )
682 uno::Reference < embed::XEmbeddedObject > xObj( xFactory->createInstanceInitNew(
683 aClass, OUString(), xStorage,
"DummyName",
684 uno::Sequence < beans::PropertyValue >() ), uno::UNO_QUERY );
688 embed::Aspects::MSOLE_CONTENT,
689 Size( nWidth, nHeight ),
690 MapUnit::Map100thMM );
694 uno::Reference < beans::XPropertySet > xSet( xObj->getComponent(), uno::UNO_QUERY );
698 xSet->setPropertyValue(
"PluginURL",
701 xSet->setPropertyValue(
"PluginMimeType",
707 *pTextCursor->GetPaM(),
711 *pDoc, pFrameFormat), uno::UNO_QUERY);
715 static_cast<SwFlyFrameFormat*>(pFrameFormat));
719 catch ( uno::Exception& )
726 const OUString& rName,
727 const OUString& rHRef,
728 const OUString& rStyleName,
729 sal_Int32 nWidth, sal_Int32 nHeight )
734 uno::Reference < XPropertySet > xPropSet;
735 uno::Reference<XUnoTunnel> xCursorTunnel(
GetCursor(), UNO_QUERY );
736 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for Cursor");
737 OTextCursorHelper* pTextCursor = comphelper::getFromUnoTunnel<OTextCursorHelper>(xCursorTunnel);
738 OSL_ENSURE( pTextCursor,
"SwXTextCursor missing" );
739 SwDoc *pDoc = pTextCursor->GetDoc();
745 bool bHasBorder =
false;
746 bool bIsBorderSet =
false;
749 if( !rStyleName.isEmpty() )
757 OSL_ENSURE( xImpPrMap.is(),
"Where is the import prop mapper?" );
761 xImpPrMap->getPropertySetMapper();
764 for( sal_Int32
i=0;
i < nCount;
i++ )
767 sal_Int32 nIdx = rProp.
mnIndex;
771 switch( rPropMapper->GetEntryContextId(nIdx) )
775 bool bYes = *o3tl::doAccess<bool>(rProp.
maValue);
776 eScrollMode = bYes ? ScrollingMode::Yes : ScrollingMode::No;
781 bHasBorder = *o3tl::doAccess<bool>(rProp.
maValue);
811 uno::Reference < embed::XEmbeddedObject > xObj( xFactory->createInstanceInitNew(
812 aClass, OUString(), xStorage,
"DummyName",
813 uno::Sequence < beans::PropertyValue >() ), uno::UNO_QUERY );
817 embed::Aspects::MSOLE_CONTENT,
818 Size( nWidth, nHeight ),
819 MapUnit::Map100thMM );
823 uno::Reference < beans::XPropertySet > xSet( xObj->getComponent(), uno::UNO_QUERY );
826 xSet->setPropertyValue(
"FrameURL",
830 xSet->setPropertyValue(
"FrameName",
833 if ( eScrollMode == ScrollingMode::Auto )
834 xSet->setPropertyValue(
"FrameIsAutoScroll",
837 xSet->setPropertyValue(
"FrameIsScrollingMode",
838 Any( eScrollMode == ScrollingMode::Yes ) );
841 xSet->setPropertyValue(
"FrameIsBorder",
844 xSet->setPropertyValue(
"FrameIsAutoBorder",
847 xSet->setPropertyValue(
"FrameMarginWidth",
848 Any( sal_Int32( aMargin.
Width() ) ) );
850 xSet->setPropertyValue(
"FrameMarginHeight",
856 *pTextCursor->GetPaM(),
860 *pDoc, pFrameFormat), uno::UNO_QUERY);
865 static_cast<SwFlyFrameFormat*>(pFrameFormat));
869 catch ( uno::Exception& )
877 const uno::Reference < XPropertySet > &rPropSet,
878 std::map < const OUString, OUString > &rParamMap)
883 uno::Reference<XUnoTunnel> xCursorTunnel( rPropSet, UNO_QUERY );
884 assert(xCursorTunnel.is() &&
"missing XUnoTunnel for embedded");
885 SwXFrame* pFrame = comphelper::getFromUnoTunnel<SwXFrame>(xCursorTunnel);
886 OSL_ENSURE( pFrame,
"SwXFrame missing" );
893 uno::Reference < embed::XEmbeddedObject > xEmbObj( rOLEObj.
GetOleRef() );
897 uno::Reference < beans::XPropertySet > xSet( xEmbObj->getComponent(), uno::UNO_QUERY );
901 const sal_Int32
nCount = rParamMap.size();
902 uno::Sequence< beans::PropertyValue > aCommandSequence( nCount );
904 std::transform(rParamMap.begin(), rParamMap.end(), aCommandSequence.getArray(),
905 [](
const auto& rParam)
907 return beans::PropertyValue( rParam.first,
910 beans::PropertyState_DIRECT_VALUE);
914 OUString aParaName(
"AppletCommands");
917 xSet->setPropertyValue( aParaName,
Any( aCommandSequence ) );
919 catch ( uno::Exception& )
921 aParaName =
"PluginCommands";
924 xSet->setPropertyValue( aParaName,
Any( aCommandSequence ) );
926 catch ( uno::Exception& )
935 const OUString& rType,
937 const OUString& rAuthor,
938 const OUString& rComment,
939 const util::DateTime& rDateTime,
943 OSL_ENSURE(
nullptr !=
m_pRedlineHelper,
"helper should have been created in constructor");
950 uno::Reference<XTextCursor> & rOldCursor,
953 uno::Reference<XTextCursor> xRet;
966 bool bIsOutsideOfParagraph)
969 uno::Reference<XTextRange> xTextRange(
GetCursor()->getStart() );
971 bIsOutsideOfParagraph);
1000 const Sequence<sal_Int8> & rKey )
const css::uno::Reference< css::embed::XEmbeddedObject > & GetApplet() const
XmlStyleFamily GetFamily() const
virtual css::uno::Reference< css::text::XTextCursor > RedlineCreateText(css::uno::Reference< css::text::XTextCursor > &rOldCursor, const OUString &rId) override
merge last paragraph
css::uno::Reference< css::text::XTextCursor > & GetCursor()
virtual void SetRecordChanges(bool bRecordChanges) override
constexpr auto toTwips(N number, Length from)
SwOLENode * GetOLENode()
Inline methods from Node.hxx.
void setWidth(tools::Long nWidth)
const SwOLEObj & GetOLEObj() const
SwDocShell * GetDocShell()
SAL_WARN_UNUSED_RESULT Point LogicToLogic(const Point &rPtSource, const MapMode *pMapModeSource, const MapMode *pMapModeDest) const
const ::std::vector< XMLPropertyState > & GetProperties() const
#define SO3_IFRAME_CLASSID
css::beans::PropertyValue makePropertyValue(const OUString &rName, T &&rValue)
virtual void RedlineSetCursor(const OUString &rId, bool bStart, bool bIsOutsideOfParagraph) override
ID used to RedlineAdd() call.
#define CTF_FRAME_MARGIN_HORI
css::uno::Reference< css::embed::XEmbeddedObject > const & GetOleRef()
#define CTF_OLE_VIS_AREA_TOP
css::uno::Sequence< sal_Int8 > GetByteSequence() const
#define CTF_OLE_VIS_AREA_WIDTH
#define CTF_OLE_VIS_AREA_LEFT
SfxItemSet & GetItemSet()
Content, content of frame (header, footer, fly).
#define CTF_FRAME_DISPLAY_SCROLLBAR
SvI18NMap & GetRenameMap()
IDocumentContentOperations const & getIDocumentContentOperations() const
void ResetOpenRedlineId()
bool IsInHeaderFooter(const SwNodeIndex &rIdx) const
virtual css::uno::Reference< css::beans::XPropertySet > createAndInsertOOoLink(SvXMLImport &rImport, const OUString &rHRef, const OUString &rStyleName, const OUString &rTableName, sal_Int32 nWidth, sal_Int32 nHeight) override
virtual css::uno::Reference< css::beans::XPropertySet > createAndInsertFloatingFrame(const OUString &rName, const OUString &rHRef, const OUString &rStyleName, sal_Int32 nWidth, sal_Int32 nHeight) override
IDocumentDrawModelAccess const & getIDocumentDrawModelAccess() const
css::uno::Reference< css::embed::XStorage > const & GetStorage()
#define SO3_SIMPRESS_CLASSID
constexpr tools::Long Width() const
void SetRecordChanges(bool bRecordChanges)
virtual void RedlineAdd(const OUString &rType, const OUString &rId, const OUString &rAuthor, const OUString &rComment, const css::util::DateTime &rDateTime, bool bMergeLastPara) override
void SetProtectionKey(const css::uno::Sequence< sal_Int8 > &rKey)
constexpr OUStringLiteral XML_IMPORT_FILTER_CHART
void SetShowChanges(bool bShowChanges)
svt::EmbeddedObjectRef & GetObject()
void CreateApplet(const OUString &rCode, const OUString &rName, bool bMayScript, const OUString &rCodeBase, std::u16string_view rBaseURL)
virtual css::uno::Reference< css::beans::XPropertySet > createAndInsertApplet(const OUString &rName, const OUString &rCode, bool bMayScript, const OUString &rHRef, sal_Int32 nWidth, sal_Int32 nHeight) override
SwNodeOffset GetIndex() const
css::uno::Sequence< css::beans::PropertyValue > InitPropertySequence(::std::initializer_list< ::std::pair< OUString, css::uno::Any > > vInit)
const SvXMLStylesContext * GetStyles() const
OUString CreateUniqueObjectName()
virtual SwFlyFrameFormat * InsertOLE(const SwPaM &rRg, const OUString &rObjName, sal_Int64 nAspect, const SfxItemSet *pFlyAttrSet, const SfxItemSet *pGrfAttrSet)=0
const OUString & GetCurrentPersistName() const
css::uno::Reference< css::text::XTextCursor > CreateRedlineTextSection(css::uno::Reference< css::text::XTextCursor > const &xOldCursor, const OUString &rId)
virtual css::uno::Reference< css::beans::XPropertySet > createAndInsertPlugin(const OUString &rMimeType, const OUString &rHRef, sal_Int32 nWidth, sal_Int32 nHeight) override
virtual void SetShowChanges(bool bShowChanges) override
#define XML_TEXT_RENAME_TYPE_TABLE
virtual css::uno::Reference< css::beans::XPropertySet > createAndInsertOLEObject(SvXMLImport &rImport, const OUString &rHRef, const OUString &rStyleName, const OUString &rTableName, sal_Int32 nWidth, sal_Int32 nHeight) override
static css::uno::Reference< css::embed::XStorage > GetTemporaryStorage(const css::uno::Reference< css::uno::XComponentContext > &rxContext=css::uno::Reference< css::uno::XComponentContext >())
virtual rtl::Reference< SvXMLImportPropertyMapper > GetImportPropertyMapper(XmlStyleFamily nFamily) const
constexpr OUStringLiteral XML_IMPORT_FILTER_DRAW
SvXMLImport & GetXMLImport()
constexpr OUStringLiteral XML_IMPORT_FILTER_CALC
virtual void endAppletOrPlugin(const css::uno::Reference< css::beans::XPropertySet > &rPropSet, std::map< const OUString, OUString > &rParamMap) override
static SdrObject * GetOrCreateSdrObject(SwFlyFrameFormat &rFormat)
virtual const SwDrawModel * GetDrawModel() const =0
Draw Model and id accessors.
SwXMLTextImportHelper(const css::uno::Reference< css::frame::XModel > &rModel, SvXMLImport &rImport, const css::uno::Reference< css::beans::XPropertySet > &rInfoSet, bool bInsertM, bool bStylesOnlyM, bool bBlockM, bool bOrganizerM)
virtual bool IsInHeaderFooter() const override
Marks a node in the document model.
virtual ~SwXMLTextImportHelper() override
bool IsInsertMode() const
#define CTF_FRAME_DISPLAY_BORDER
static SwOLENode * lcl_GetOLENode(const SwFrameFormat *pFrameFormat)
static void lcl_setObjectVisualArea(const uno::Reference< embed::XEmbeddedObject > &xObj, sal_Int64 nAspect, const Size &aVisSize, const MapUnit &aUnit)
#define CTF_FRAME_MARGIN_VERT
Frame cannot be moved in Var-direction.
#define CTF_OLE_DRAW_ASPECT
virtual SwFlyFrameFormat * InsertEmbObject(const SwPaM &rRg, const svt::EmbeddedObjectRef &xObj, SfxItemSet *pFlyAttrSet)=0
Insert OLE-objects.
virtual void SetChangesProtectionKey(const css::uno::Sequence< sal_Int8 > &rKey) override
const SwNodeIndex * GetContentIdx() const
void SetCursor(const OUString &rId, bool bStart, css::uno::Reference< css::text::XTextRange > const &rRange, bool bIsOutsideOfParagraph)
bool SetURL(std::u16string_view rTheAbsURIRef, EncodeMechanism eMechanism=EncodeMechanism::WasEncoded, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8)
css::uno::Reference< css::embed::XEmbeddedObject > GetEmbeddedObject(const OUString &, OUString const *pBaseURL=nullptr)
OUString GetMainURL(DecodeMechanism eMechanism, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8) const
void SetChartTableName(const OUString &rNm)
const std::pair< OUString, SvGUID > aServiceMap[]
void AdjustStartNodeCursor(const OUString &rId)
Adjust the start (end) position for a redline that begins in a start node.
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
XMLRedlineImportHelper * m_pRedlineHelper
comphelper::EmbeddedObjectContainer & GetEmbeddedObjectContainer() const
std::unique_ptr< char[]> aBuffer
void SetViewAspect(sal_Int64 nAspect)
static void lcl_putHeightAndWidth(SfxItemSet &rItemSet, sal_Int32 nHeight, sal_Int32 nWidth, Size *pTwipSize=nullptr)
#define CTF_OLE_VIS_AREA_HEIGHT
OUString GetAbsoluteReference(const OUString &rValue) const
static MapUnit UnoEmbed2VCLMapUnit(sal_Int32 nUnoEmbedMapUnit)
#define SAL_WARN_IF(condition, area, stream)
constexpr tools::Long Height() const
const SwNodes & GetNodes() const
XMLPropStyleContext * FindAutoFrameStyle(const OUString &rName) const
void Add(std::u16string_view rType, const OUString &rId, const OUString &rAuthor, const OUString &rComment, const css::util::DateTime &rDateTime, bool bMergeLastParagraph)
SfxObjectShell * GetPersist() const
Reference< XComponentContext > getProcessComponentContext()
virtual SvXMLImportContext * CreateTableChildContext(SvXMLImport &rImport, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
void SetOLESizeInvalid(bool b)
virtual void RedlineAdjustStartNodeCursor() override
void setHeight(tools::Long nHeight)
Reference< XSingleServiceFactory > xFactory
SVXCORE_DLLPUBLIC MSO_SPT Get(const OUString &)
static bool TryRunningState(const css::uno::Reference< css::embed::XEmbeddedObject > &)
static css::uno::Reference< css::text::XTextContent > CreateXTextEmbeddedObject(SwDoc &rDoc, SwFrameFormat *pFrameFormat)
constexpr OUStringLiteral XML_IMPORT_FILTER_MATH
SwDoc * GetDocFromXMLImport(SvXMLImport const &)
const SwGrfFormatColl * GetDfltGrfFormatColl() const
#define SO3_PLUGIN_CLASSID
#define SO3_SDRAW_CLASSID
constexpr OUStringLiteral XML_IMPORT_FILTER_WRITER
const SwAttrPool & GetAttrPool() const
OUString const & GetOpenRedlineId() const
SVL_DLLPUBLIC OUString SmartRel2Abs(INetURLObject const &rTheBaseURIRef, OUString const &rTheRelURIRef, Link< OUString *, bool > const &rMaybeFileHdl=Link< OUString *, bool >(), bool bCheckFileExists=true, bool bIgnoreFragment=false, INetURLObject::EncodeMechanism eEncodeMechanism=INetURLObject::EncodeMechanism::WasEncoded, INetURLObject::DecodeMechanism eDecodeMechanism=INetURLObject::DecodeMechanism::ToIUri, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8, FSysStyle eStyle=FSysStyle::Detect)
constexpr OUStringLiteral XML_IMPORT_FILTER_IMPRESS
SfxMedium * GetMedium() const