summaryrefslogtreecommitdiff
path: root/oox/source/export/chartexport.cxx
diff options
context:
space:
mode:
authorVinaya Mandke <vinaya.mandke@synerzip.com>2014-02-03 11:53:02 +0530
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2014-02-12 02:46:32 +0100
commitffb1053b287fddd2c96757e5c6825381afc43fa1 (patch)
treeab5104f314cd8a83feaceb525e0cb1b8ed952cd7 /oox/source/export/chartexport.cxx
parentf38a223d6d455b07a4fdbfe842b2b367306544d5 (diff)
fdo#74115 Fix for DOCX BitmapFill for Chart Wall
Fixed import and export for chart wall Bitmap Fill in DOCX Added UT for the same. Conflicts: oox/source/export/chartexport.cxx Change-Id: Id066b0e4c2007fcdfdbbfa67b40307463bf0cfe7
Diffstat (limited to 'oox/source/export/chartexport.cxx')
-rw-r--r--oox/source/export/chartexport.cxx31
1 files changed, 30 insertions, 1 deletions
diff --git a/oox/source/export/chartexport.cxx b/oox/source/export/chartexport.cxx
index 939e5a489a1b..19394de8c243 100644
--- a/oox/source/export/chartexport.cxx
+++ b/oox/source/export/chartexport.cxx
@@ -1166,11 +1166,40 @@ void ChartExport::exportFill( Reference< XPropertySet > xPropSet )
case FillStyle_GRADIENT :
exportGradientFill( xPropSet );
break;
+ case FillStyle_BITMAP :
+ exportBitmapFill( xPropSet );
+ break;
default:
WriteFill( xPropSet );
}
}
+void ChartExport::exportBitmapFill( Reference< XPropertySet > xPropSet )
+{
+ if( xPropSet.is() )
+ {
+ OUString sFillGradientName;
+ xPropSet->getPropertyValue("FillBitmapName") >>= sFillGradientName;
+
+ uno::Reference< lang::XMultiServiceFactory > xFact( getModel(), uno::UNO_QUERY );
+ try
+ {
+ uno::Reference< container::XNameAccess > xGradient( xFact->createInstance("com.sun.star.drawing.BitmapTable"), uno::UNO_QUERY );
+ uno::Any rValue = xGradient->getByName( sFillGradientName );
+ OUString sBitmapURL;
+ if( (rValue >>= sBitmapURL) )
+ {
+ WriteBlipFill( xPropSet, sBitmapURL, XML_a, true, true );
+ }
+ }
+ catch( const uno::Exception & rEx )
+ {
+ DBG_WARNING( "Bitmap Property not Found; ChartExport::exportBitmapFill" );
+ }
+
+ }
+}
+
void ChartExport::exportGradientFill( Reference< XPropertySet > xPropSet )
{
if( xPropSet.is() )
@@ -1191,7 +1220,7 @@ void ChartExport::exportGradientFill( Reference< XPropertySet > xPropSet )
}
catch( const uno::Exception & rEx )
{
- DBG_WARNING( "Gradient Property not Found; ChartExport::exportPlotAreaGradientFill" );
+ DBG_WARNING( "Gradient Property not Found; ChartExport::exportGradientFill" );
}
}