diff --git a/reportdesign/source/core/sdr/RptObject.cxx b/reportdesign/source/core/sdr/RptObject.cxx index f1c6e4d..4c07a41 100644 --- a/reportdesign/source/core/sdr/RptObject.cxx +++ b/reportdesign/source/core/sdr/RptObject.cxx @@ -950,7 +952,12 @@ OUnoObject& OUnoObject::operator=(const OUnoObject& rObj) Reference xSource(const_cast(rObj).getUnoShape(), uno::UNO_QUERY); Reference xDest(getUnoShape(), uno::UNO_QUERY); if ( xSource.is() && xDest.is() ) + { + SvxShape* pSourceShape = SvxShape::getImplementation( xSource ); + SvxShape* pDestShape = SvxShape::getImplementation( xDest ); + pDestShape->SetShapeType(pSourceShape->getShapeType()); comphelper::copyProperties(xSource.get(), xDest.get()); + } return *this; } @@ -1173,7 +1180,12 @@ OOle2Obj& OOle2Obj::operator=(const OOle2Obj& rObj) uno::Reference< chart2::data::XDatabaseDataProvider > xSource( lcl_getDataProvider(rObj.GetObjRef()) ); uno::Reference< chart2::data::XDatabaseDataProvider > xDest( lcl_getDataProvider(GetObjRef()) ); if ( xSource.is() && xDest.is() ) + { + SvxShape* pSourceShape = SvxShape::getImplementation( xSource ); + SvxShape* pDestShape = SvxShape::getImplementation( xDest ); + pDestShape->SetShapeType(pSourceShape->getShapeType()); comphelper::copyProperties(xSource.get(),xDest.get()); + } initializeChart(pRptModel->getReportDefinition().get());