From 4e5e40e4c627775caf039870bcc28269a0d05937 Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Fri, 31 May 2013 16:00:42 +0200 Subject: In ShapeExport, use general com.sun.star.comp.oox.xls.ExcelFilter ...instead of its export-only part com.sun.star.comp.oox.ExcelFilterExport (for which even a new-style service com.sun.star.oox.ExcelFilterExport has been introduced recently, but all of this should probably go away again; that this filter is used explicitly is probably a rare enough scenario to not warrant a dedicated new-style service). The modified code in ShapeExport::WriteOLE2Shape is triggered e.g. with a Presetation, insert a Spreadsheet as an OLE Object, and save as "Office Open XML Presentation (.pptx)." Change-Id: Id2645972caaec5265eed645c9c6e2c308a4d079d --- oox/source/export/shapes.cxx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx index d4b65ff140c3..74fa5b945357 100644 --- a/oox/source/export/shapes.cxx +++ b/oox/source/export/shapes.cxx @@ -46,7 +46,6 @@ #include #include #include -#include #include #include #include @@ -1311,7 +1310,6 @@ ShapeExport& ShapeExport::WriteOLE2Shape( Reference< XShape > xShape ) if( xSheetDoc.is() && mpFB) { Reference< XComponent > xDocument( mAny, UNO_QUERY ); - Reference< XExporter > xExporter = css::oox::ExcelFilterExport::create( mpFB->getComponentContext() ); if( xDocument.is() ) { Reference< XOutputStream > xOutStream = mpFB->openFragmentStream( OUStringBuffer() @@ -1327,13 +1325,15 @@ ShapeExport& ShapeExport::WriteOLE2Shape( Reference< XShape > xShape ) rMedia[0].Name = MediaDescriptor::PROP_STREAMFOROUTPUT(); rMedia[0].Value <<= xOutStream; - Reference< XFilter > xFilter( xExporter, UNO_QUERY ); - - if( xFilter.is() ) - { - xExporter->setSourceDocument( xDocument ); - xFilter->filter( rMedia ); - } + Reference< XExporter > xExporter( + mpFB->getComponentContext()->getServiceManager()-> + createInstanceWithContext( + "com.sun.star.comp.oox.xls.ExcelFilter", + mpFB->getComponentContext() ), + UNO_QUERY_THROW ); + xExporter->setSourceDocument( xDocument ); + Reference< XFilter >( xExporter, UNO_QUERY_THROW )-> + filter( rMedia ); xOutStream->closeOutput(); -- cgit