summaryrefslogtreecommitdiff
path: root/sw/source/filter
diff options
context:
space:
mode:
authorRĂ¼diger Timm <rt@openoffice.org>2004-11-26 12:30:59 +0000
committerRĂ¼diger Timm <rt@openoffice.org>2004-11-26 12:30:59 +0000
commit119ad5026bdceaa5d8f5ca6e47aeda0e9bc59112 (patch)
tree232730069f86da08dec3166b7ed312b53ccb23c2 /sw/source/filter
parent3a6b7230750efde6497aa696d9f4e5adc03d5243 (diff)
INTEGRATION: CWS oasisbf2 (1.32.58); FILE MERGED
2004/11/02 17:10:14 mib 1.32.58.1: #i35133#: replacement image for embedded objects
Diffstat (limited to 'sw/source/filter')
-rw-r--r--sw/source/filter/xml/xmltexte.cxx27
1 files changed, 25 insertions, 2 deletions
diff --git a/sw/source/filter/xml/xmltexte.cxx b/sw/source/filter/xml/xmltexte.cxx
index 0b14259d2cc3..313a4738b547 100644
--- a/sw/source/filter/xml/xmltexte.cxx
+++ b/sw/source/filter/xml/xmltexte.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: xmltexte.cxx,v $
*
- * $Revision: 1.32 $
+ * $Revision: 1.33 $
*
- * last change: $Author: kz $ $Date: 2004-10-04 19:23:07 $
+ * last change: $Author: rt $ $Date: 2004-11-26 13:30:59 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -144,6 +144,9 @@
#ifndef _SWSTYLENAMEMAPPER_HXX
#include <SwStyleNameMapper.hxx>
#endif
+#ifndef _XMLOFF_XMLBASE64EXPORT_HXX_
+#include <xmloff/XMLBase64Export.hxx>
+#endif
using namespace ::rtl;
using namespace ::com::sun::star;
@@ -152,6 +155,7 @@ using namespace ::com::sun::star::style;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::document;
+using namespace ::com::sun::star::io;
using namespace ::xmloff::token;
enum SvEmbeddedObjectTypes
@@ -163,6 +167,8 @@ enum SvEmbeddedObjectTypes
SV_EMBEDDED_FRAME
};
+const sal_Char sObjectReplacements[] = "ObjectReplacements/";
+
// ---------------------------------------------------------------------
SwNoTxtNode *SwXMLTextParagraphExport::GetNoTxtNode(
@@ -283,6 +289,7 @@ SwXMLTextParagraphExport::SwXMLTextParagraphExport(
XMLTextParagraphExport( rExp, rAutoStylePool ),
sTextTable( RTL_CONSTASCII_USTRINGPARAM( "TextTable" ) ),
sEmbeddedObjectProtocol( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.EmbeddedObject:" ) ),
+ sGraphicObjectProtocol( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.GraphicObject:" ) ),
aAppletClassId( SO3_APPLET_CLASSID ),
aPluginClassId( SO3_PLUGIN_CLASSID ),
aIFrameClassId( SO3_IFRAME_CLASSID ),
@@ -795,6 +802,22 @@ void SwXMLTextParagraphExport::_exportTextEmbedded(
break;
}
}
+ if( SV_EMBEDDED_OUTPLACE==nType || SV_EMBEDDED_OWN==nType )
+ {
+ OUString sURL( sGraphicObjectProtocol );
+ sURL += rOLEObj.GetCurrentPersistName();
+ if( (rExport.getExportFlags() & EXPORT_EMBEDDED) == 0 )
+ {
+ sURL = GetExport().AddEmbeddedObject( sURL );
+ lcl_addURL( rExport, sURL, sal_False );
+ }
+
+ SvXMLElementExport aElem( GetExport(), XML_NAMESPACE_DRAW,
+ XML_IMAGE, sal_False, sal_True );
+
+ if( (rExport.getExportFlags() & EXPORT_EMBEDDED) != 0 )
+ GetExport().AddEmbeddedObjectAsBase64( sURL );
+ }
// Lastly the stuff common to each of Applet/Plugin/Floating Frame
exportEvents( rPropSet );