summaryrefslogtreecommitdiff
path: root/xmloff/source/draw/shapeexport2.cxx
diff options
context:
space:
mode:
authorIvo Hinkelmann <ihi@openoffice.org>2007-04-16 12:11:31 +0000
committerIvo Hinkelmann <ihi@openoffice.org>2007-04-16 12:11:31 +0000
commit615b3824b258d09e24d92b0135827e03bfd97da7 (patch)
tree0685a8ff93e160b708238cae92ecc524d22688e2 /xmloff/source/draw/shapeexport2.cxx
parent000f7518f1b415b75beb5658f96aa1a4e23701d1 (diff)
INTEGRATION: CWS impressrng01_SRC680 (1.57.56); FILE MERGED
2007/03/30 15:23:24 cl 1.57.56.2: fixed linux compile issue 2007/03/28 13:36:00 cl 1.57.56.1: #i42375# export empty href for placeholder ole-object and image
Diffstat (limited to 'xmloff/source/draw/shapeexport2.cxx')
-rw-r--r--xmloff/source/draw/shapeexport2.cxx79
1 files changed, 50 insertions, 29 deletions
diff --git a/xmloff/source/draw/shapeexport2.cxx b/xmloff/source/draw/shapeexport2.cxx
index 385272529ab5..e0973d59d9cc 100644
--- a/xmloff/source/draw/shapeexport2.cxx
+++ b/xmloff/source/draw/shapeexport2.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: shapeexport2.cxx,v $
*
- * $Revision: 1.57 $
+ * $Revision: 1.58 $
*
- * last change: $Author: ihi $ $Date: 2006-12-19 17:26:11 $
+ * last change: $Author: ihi $ $Date: 2007-04-16 13:11:31 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -1190,46 +1190,55 @@ void XMLShapeExport::ImpExportGraphicObjectShape(
SvXMLElementExport aElem( mrExport, XML_NAMESPACE_DRAW,
XML_FRAME, bCreateNewline, sal_True );
- if( !bIsEmptyPresObj )
+ if( !bIsEmptyPresObj || !mrExport.isExperimentalOdfExportEnabled() )
{
- OUString aStreamURL;
- OUString aStr;
+ if( !bIsEmptyPresObj )
+ {
+ OUString aStreamURL;
+ OUString aStr;
- xPropSet->getPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicURL"))) >>= sImageURL;
- aStr = mrExport.AddEmbeddedGraphicObject( sImageURL );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, aStr );
+ xPropSet->getPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicURL"))) >>= sImageURL;
+ aStr = mrExport.AddEmbeddedGraphicObject( sImageURL );
+ mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, aStr );
- if( aStr.getLength() )
- {
- if( aStr[ 0 ] == '#' )
+ if( aStr.getLength() )
{
- aStreamURL = OUString::createFromAscii( "vnd.sun.star.Package:" );
- aStreamURL = aStreamURL.concat( aStr.copy( 1, aStr.getLength() - 1 ) );
- }
+ if( aStr[ 0 ] == '#' )
+ {
+ aStreamURL = OUString::createFromAscii( "vnd.sun.star.Package:" );
+ aStreamURL = aStreamURL.concat( aStr.copy( 1, aStr.getLength() - 1 ) );
+ }
- // update stream URL for load on demand
- uno::Any aAny;
- aAny <<= aStreamURL;
- xPropSet->setPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicStreamURL")), aAny );
+ // update stream URL for load on demand
+ uno::Any aAny;
+ aAny <<= aStreamURL;
+ xPropSet->setPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicStreamURL")), aAny );
+ mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
+ mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
+ mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
+ }
+ }
+ else
+ {
+ OUString aStr;
+ mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, aStr );
mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
-
mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
-
mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
}
- }
-
- {
- SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DRAW, XML_IMAGE, sal_True, sal_True);
- if( sImageURL.getLength() )
{
- // optional office:binary-data
- mrExport.AddEmbeddedGraphicObjectAsBase64( sImageURL );
+ SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DRAW, XML_IMAGE, sal_True, sal_True);
+
+ if( sImageURL.getLength() )
+ {
+ // optional office:binary-data
+ mrExport.AddEmbeddedGraphicObjectAsBase64( sImageURL );
+ }
+ if( !bIsEmptyPresObj )
+ ImpExportText( xShape );
}
- if( !bIsEmptyPresObj )
- ImpExportText( xShape );
}
ImpExportEvents( xShape );
@@ -1616,6 +1625,7 @@ void XMLShapeExport::ImpExportOLE2Shape(
SvXMLElementExport aElement( mrExport, XML_NAMESPACE_DRAW,
XML_FRAME, bCreateNewline, sal_True );
+ if( !bIsEmptyPresObj || !mrExport.isExperimentalOdfExportEnabled() )
{
if (pAttrList)
{
@@ -1669,6 +1679,17 @@ void XMLShapeExport::ImpExportOLE2Shape(
}
}
}
+ else
+ {
+ // export empty href for empty placeholders to be valid odf
+ OUString sEmptyURL;
+
+ mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, sEmptyURL );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
+ }
+
enum XMLTokenEnum eElem = sClassId.getLength() ? XML_OBJECT_OLE : XML_OBJECT;
SvXMLElementExport aElem( mrExport, XML_NAMESPACE_DRAW, eElem, sal_True, sal_True );